当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 用ajax实现的自动投票的代码

Javascript
javascript form 验证函数 弹出对话框形式
IE JS编程需注意的内存释放问题
JQuery 无废话系列教程(二) jquery实战篇上
一些常用的JS功能函数代码
一个很酷的拖动层的js类,兼容IE及Firefox
JavaScript 开发中规范性的一点感想
javascript 连连看代码出炉
javascript 读取图片文件的大小
JQuery 国际象棋棋盘 实现代码
javascript 可以拖动的DIV(二)
[原创]javascript 改变字体大小方法集合
javascript 变量作用域 代码分析
js AspxButton的客户端操作
event对象的方法 兼容多浏览器
Javascript 阻止javascript事件冒泡,获取控件ID值
Javascript 函数对象的多重身份
javawscript 三级菜单的实现原理
js 跨域和ajax 跨域问题小结
JavaScript XML操作 封装类
通用的二级菜单代码(css+javascript)

Javascript 中的 用ajax实现的自动投票的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 422 ::
收藏到网摘: n/a

一朋友委托我帮他投票,地址在:
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 全选 提示:你可先修改部分代码,再按运行]