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

Javascript
JS 页面自动加载函数(兼容多浏览器)
innerText和innerHTML 一些问题分析
js 淘宝首页的拼音排序效果
jquery 获取当前元素的索引值
编写兼容IE和FireFox的脚本
JavaScript Table行定位效果
W3C Group的JavaScript1.8 新特性介绍
JavaScript 取一个月的最后一天
两个table之间相互移动数据
Javascript 的addEventListener()及attachEvent()区别分析
jQuery(1.3.2) 7行代码搞定跟随屏幕滚动的层
javascript操作cookie_获取与修改代码
鼠标经过的文本框textbox变色
Javascript 兼容firefox的一些问题
一些Javascript的IE和Firefox(火狐)兼容性的问题总结及常用例子
简单的js分页脚本
各种常用浏览器getBoundingClientRect的解析
document.compatMode介绍
javascript 方法一些使用方法
JavaScript constructor和instanceof,JSOO中的一对欢喜冤家

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 430 ::
收藏到网摘: 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 全选 提示:你可先修改部分代码,再按运行]