setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。
一般使用
setTimeout("alert('how are you?')",2000);
如果要多次使用的话,如下:
function ceh()
{
var t=setTimeout("ceh()",1000);
}
上面之所以定义一个t,是便于在后面代码中如果有要实现停止的时候可以用 clearTimeout(t)函数
下面是一个实现时钟的程序:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body onLoad="startTime()"> <!--因为这是两个函数盗用循环的过程,没有触发事件,因为在文中加载的时候调用startTime()函数开始执行-->
当前时间是:
<span id="demo"></span>
<script>
function startTime(value)
{
var time=new Date();
var h=time.getHours();
var m=time.getMinutes();
var s=time.getSeconds();
m=checkTime(m);
s=checkTime(s);
document.getElementById("demo").innerHTML=h+":"+m+":"+s;
setTimeout("startTime()",500);
}
function checkTime(i) /*注意此处是一个函数,因此函数前面要添加function */
{
if(i<10)
{
i="0"+i;
/*因为日期采用二十四紧进制格式一般为23:25:06
当i<10,这个时候i的取值是一位数,导致显示的格式上面少一位数
因此这里在i的前面添加"0",这样显示的时间在格式上面就是完整的了
*/
}
return i;
}
</script>
</body>
</html>