window对象有两个主要的定时方法,分别是setTimeout 和 setInteval 他们的语法基本上相同,但是完成的功能取有区别。
* setTimeout方法是定时程序,也就是在什么时间以后干什么。干完了就拉倒。
* setInterval方法则是表示间隔一定时间反复执行某操作。
如果用setTimeout实现setInerval的功能,就需要在执行的程序中再定时调用自己才行。如果要清除计数器需要根据使用的方法不同,调用不同的清除方法:
例如:tttt=setTimeout('northsnow()',1000);
clearTimeout(tttt);
或者:
tttt=setInterval('northsnow()',1000);
clearInteval_r(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>
再举一个显示当前日期及时间的例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>无标题页</title>
<script language=javascript>
window.setInterval("timer.innerHTML = new Date().toLocaleString()+'星期'+'一,二,三,四,五,六,日'.charAt(new Date().getDay())",1000);
</script>
</head>
<body>
<div id="timer"></div>
</body>
</html> |