一朋友委托我帮他投票,地址在:
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>
<scriptlanguage="javascript">
varCheckFreq=1;//队列检查频率,默认1秒检查一次
varbRun=false;//防止同一时间同时运行2个程序
functionRunUrl(strUrl,strFreq)
{
this.url=strUrl;//运行的URL
this.freq=strFreq;//运行频率
this.lastrun='';//上次运行时间
}
varRunQueue=newArray();
functionAddRun(strUrl,strFreq)//添加Run
{
if(strUrl==''||strFreq=='')return
RunQueue[RunQueue.length]=newRunUrl(strUrl,strFreq)
}
functionRun(url)//运行url
{
varxmlHttp;
if(window.XMLHttpRequest)xmlHttp=newXMLHttpRequest();
elseif(window.ActiveXObject)xmlHttp=newActiveXObject("Microsoft.XMLHTTP");
xmlHttp.onreadystatechange=function(){bRun=false;}
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
bRun=true;
}
functionCheckRun()//检查队列
{
vardtNow=newDate(),objRun;
vartNow=dtNow.getTime();
for(vari=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>
<scriptlanguage="javascript">
<>
</script></html>
//By Ayi 2007-2-10 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;iobjRun.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
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]