- JScript code
<html> <head> <script> function setNDateDiff() { var nowdate=new Date() var enddate=new Date("27 May 2012") datediff=enddate-nowdate var dayx=1000*60*60*24 var hourx=1000*60*60 var minx=1000*60 var secx=1000 day=Math.floor(datediff/dayx); hour=parseInt(datediff/hourx-day*24); min=parseInt(datediff/minx-day*24*60-hour*60); sec=parseInt(datediff/secx-day*24*60*60-hour*60*60-min*60); ndatediff="距离考试还有"+day+"天"+(hour<10?'0'+hour:hour)+"小时"+(min<10?'0'+min:min)+"分钟"+(sec<10?'0'+sec:sec)+"秒"; document.write(ndatediff) } </script> </head> <body> <script> setInterval("setNDateDiff()",1000) </script> </body> </html>
这段代码中用document.write()方法为什么不行呢?谁给解释下。
------解决方案--------------------
你需要把 结果放到DOM元素里面,而不是每隔1秒打印document.write(ndatediff)到页面上。
------解决方案--------------------
在页面加载完成以后调用document.write()会新创建一个dom覆盖原来的页面,原来的页面代码也就不存在了还怎么运行。所以一般在页面加载完成后不会再调用document.write()方法