87,921
社区成员
发帖
与我相关
我的任务
分享
//这样只看到最后结果
for(var i=0;i<1000;i++){
document.getElementsByTagName('div')[0].innerHTML=i
}
//这样则能看到数字的变化(原因就在于每隔一段时间执行一次循环体,而不是像上面一样不间断连续执行)
//(1)用setInterval
var i=0;
function foo(){
if(i<1000){
document.getElementsByTagName('div')[0].innerHTML=i;
i++;
}
};
setInterval(foo,100)
//(1)用setTimeout
var i=0;
function foo(){
if(i<1000){
document.getElementsByTagName('div')[0].innerHTML=i;
i++;
setTimeout(foo,100)
}
};
setTimeout(foo,100)
PS:延时建议用setTimeout.
setInterval和setTimeout在延时机制上是不同的,在程序比较复杂的时候 setInterval在无法保证定时器的准确性。两者具体的区别楼主可以自行google一下。setInterval(showcolumns,1000);
即可。
setInterval、setTimeout的第一个参数是个function,你写的showcolumns()会立即执行的。
function showcolumns()
{
if(timer<=200)
{
setInterval(showcolumns(),1000);
timer++;
}
}
timer=1;
showcolumns();
var iT=0;
var timer=null;
function test()
{
if(iT>=5)//控制动作为5次,5次后结束定时器
clearInterval(timer);//清除定时器
alert(iT);//事件处理
iT++;//累加
}
timer=setInterval('test()',1000);
[/quote]
没有代码?