setTimeout
(表达式,延时时间)
setInterval(表达式,交互时间)
延时时间/交互时间是以豪秒为单位的(1000ms=1s)
setTimeout
在执行时,是在载入后延迟指定时间后,去执行一次表达式,仅执行一次
setInterval
在执行时,它从载入后,每隔指定的时间就执行一次表达式
set
Timeout 也可以实现象setInterval一样的功能
set
Timeout:
<script
language=
"javascript"
>
var
i;
i=
0
;
function
reloop()
{
i=i+
1
;
alert(String(i));
setTimeout(
"reloop()"
,
1000
);
}
reloop();
</script>
setInterval:
<script
language=
"javascript"
>
var
i;
i=
0
;
function
reloop()
{
i=i+
1
;
alert(String(i));
}
setInterval(
"reloop()"
,
1000
);
</script>
window对象有两个主要的定时方法,分别是setTimeout
和 setInteval 他们的语法基本上相同,但是完成的功能取有区别。
setTimeout方法是定时程序,也就是在什么时间以后干什么。干完了就拉倒。
setInterval方法则是表示间隔一定时间反复执行某操作。
如果用setTimeout实现setInerval的功能,就需要在执行的程序中再定时调用自己才行。如果要清除计数器需要
根据使用的方法不同,调用不同的清除方法:
例如:tttt=setTimeout(@#northsnow()@#,
1000
);
clearTimeout(tttt);
或者:
tttt=setInterval(@#northsnow()@#,
1000
);
clearInteval(tttt);
举一个例子:
<div
id=
"liujincai"
></div>
<input
type=
"button"
name=
"start"
value=
"start"
onclick=@#startShow();@#>
<input
type=
"button"
name=
"stop"
value=
"stop"
onclick=
"stop();"
>
<script
language=
"javascript"
>
var
intvalue=
1
;
var
timer2=
null
;
function
startShow()
{
liujincai.innerHTML=liujincai.innerHTML
+
" "
+
(intvalue ++).toString();
timer2=window.setTimeout(
"startShow()"
,
2000
);
}
function
stop()
{
window.clearTimeout(timer2);
}
</script>