我是靠谱客的博主 可耐蜡烛,最近开发中收集的这篇文章主要介绍用ajax实现的自动投票的代码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一朋友委托我帮他投票,地址在:
http://publish.sina.com.cn/04/13/413/search.php
投票的链接是:
http://publish.sina.com.cn/poll.php?p_id=413&t_id=119
我于是做了下面一段代码,做成任务管理器,每隔1分钟打开一次,再自动关闭窗口,但实际运行下来,却无效果,不知问题出在哪里?

复制代码 代码如下:

<html>
<script language="javascript" >
var CheckFreq=1;//队列检查频率,默认1秒检查一次
var bRun=false;//防止同一时间同时运行2个程序
function RunUrl(strUrl,strFreq)
{
  this.url=strUrl;//运行的URL
  this.freq=strFreq;//运行频率
  this.lastrun='';//上次运行时间
}
var RunQueue = new Array();
function AddRun(strUrl,strFreq)//添加Run
{
  if(strUrl==''||strFreq=='')return
  RunQueue[RunQueue.length]=new RunUrl(strUrl,strFreq)
}
function Run(url)//运行url
{
  var xmlHttp;
  if (window.XMLHttpRequest)xmlHttp = new XMLHttpRequest();
  else if (window.ActiveXObject)xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  xmlHttp.onreadystatechange = function(){bRun=false;}
  xmlHttp.open("GET", url, true);
  xmlHttp.send(null);
  bRun=true;
}
function CheckRun()//检查队列
{
  var dtNow=new Date(),objRun;
  var tNow=dtNow.getTime();
  for(var i=0;i<RunQueue.length;i++)
  {
    objRun=RunQueue[i];
    if(objRun.lastrun=='')objRun.lastrun=tNow;
    if(!bRun&&(objRun.freq==0||(tNow-objRun.lastrun)>objRun.freq*1000))
    {
      objRun.lastrun=tNow;
      Run(objRun.url);
    }
  }
}
AddRun('http://publish.sina.com.cn/poll.php?p_id=413&t_id=119',10);
setInterval('CheckRun()',CheckFreq*1000);//setInterval
</script>

<script language="javascript" >
<!--
function clock(){
    i=i-1
   document.title="After "+i+" minitues,this window will closed self!";
   if(i>0)setTimeout("clock();",20000);
   else {window.opener=null;self.close();}
}
var i=2
clock();
--> 
</script></html>


[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

最后

以上就是可耐蜡烛为你收集整理的用ajax实现的自动投票的代码的全部内容,希望文章能够帮你解决用ajax实现的自动投票的代码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(110)

评论列表共有 0 条评论

立即
投稿
返回
顶部