window对象有两个主要的定时方法,分别是setTimeout 和 setInterval 他们的语法基本上相同,但是完成的功能却有区别。
定义和用法:
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。
语法:
setTimeout(code,millisec)
参数:
code (必需):要调用的函数后要执行的 JavaScript 代码串。
millisec(必需):在执行代码前需等待的毫秒数。
提示:
setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。
举例:
<script language="javascript">
function timer(){
var value=Number(document.all['time'].value);
if (value>1) document.all['time'].value=value-1;
else {
document.all['time'].value="同意";
return false;
}
window.setTimeout("timer()",1000);
}
</script>
<body onload="timer()">
<input name="time" value="10" type="button" style="width:40px;" />
</body>
定义和用法:
setInterval() 方法用于在指定的毫秒数后调用函数或计算表达式。它与setTimeout()方法不同的是前者可以无限的循环,不会受调用函数的限制,要想退出此循环可以使用clearInterval()方法,可以使用返回值为现在要设置的这个对象;
语法:
setInterval(code,millisec)
参数:
code (必需):要调用的函数后要执行的 JavaScript 代码串。
millisec(必需):在执行代码前需等待的毫秒数。
举例:
<script language="javascript">
function timer(){
var value=Number(document.all['time'].value);
if(value==2){
timeID=window.setInterval("change()",1000);
clearInterval(timeID);
}
else window.setInterval("change()",1000);
}
function change(){
var value=Number(document.all['time'].value);
if (value>1) document.all['time'].value=value-1;
else {
document.all['time'].value="同意";
return false;
}
}
</script>
<body onLoad="timer()">
<input name="time" value="10" type="button" style="width:40px;" />
</body>
详细的文字解释请参阅:http://blog.163.com/yong5123@126/blog/static/4551606220110613442141/