<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>定时器</title>
<script type="text/javascript">
var attime;
function clock(){
var time=new Date();
attime= time.getHours()+"时"+time.getMinutes()+"分"+time.getSeconds()+"秒" ;
document.getElementById("clock").value = attime;
//为什么改成 document.write(attime);只显示一个不变的值,下面计时器不是间隔时间后运行一次函数,函数体内new一个Date对象时时间在变化,attime的内容也应该随着变化的呀?
}
setInterval(clock,100);
</script>
</head>
<body>
<form>
<input type="text" id="clock" size="50" />
</form>
</body>
</html>
改成document,write(attime)以后,应该会一直往文档里面写数据的,写进去的都是当时的时间,你看看是不是程序哪里写错了
直接输出的话只是获取输出当前的一个值,只会一直在<input>文本中输出,并不能显示计时,而通过获取<input>的id不断改变它的值,所以看起来像时钟在变化