<!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.write(attime); document.getElementById("clock").value = attime; } setInterval(clock(),1000); </script> </head> <body> <form> <input type="text" id="clock" size="50" /> </form> </body> </html>
浏览器出错提示是 :Uncaught TypeError: Cannot set property 'value' of null 第11行 document.getElementById("clock").value = attime;
你 document.getElementById("clock")写太前了,那时DOM树还没解析,还没有id为clock,只要把代码放在input标签后面就不会报错了。
setInterval(clock,1000),忽略了后面有一个延迟,那时候已经加载完成,多谢了
如此看,js进阶篇,url http://www.imooc.com/code/1023 ,的作业代码需要调整位置?