javascript为什么我写的函数没有隔一秒执行一次...效果是时间显示但不会隔一秒变化

window.onload=functionti(){vardt=newDate('9/6/201200:00:00')varnow=newDate()varms=dt.... window.onload=function ti(){
var dt=new Date('9/6/2012 00:00:00')
var now=new Date()
var ms=dt.getTime()-now.getTime()
var show='距世界末日还有'
var d=parseInt(ms/(1000*60*60*24))+'天'+'<br/>'
var h=parseInt(ms/(1000*60*60))+'小时'+'<br/>'
var m=parseInt(ms/(1000*60))+'分钟'+'<br/>'
var s=parseInt(ms/(1000))+'秒'+'<br/>'
var ms=parseInt(ms)+'秒'+'<br/>'
document.write(show+d)
document.write(show+h)
document.write(show+m)
document.write(show+s)
document.write(show+ms)
}
setInterval('ti()',1000)
为什么我写的函数没有隔一秒执行一次...效果是时间显示但不会隔一秒变化
展开
 我来答
缓步莫迟疑C
2011-10-27 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6217
采纳率:73%
帮助的人:6499万
展开全部
<body>
<div id="aa"></div>
<script language="javascript">
function ti(){
var dt=new Date('9/6/2012 00:00:00')
var now=new Date()
var ms=dt.getTime()-now.getTime()
var show='距世界末日还有'
var d=parseInt(ms/(1000*60*60*24))+'天'+'<br/>'
var h=parseInt(ms/(1000*60*60))+'小时'+'<br/>'
var m=parseInt(ms/(1000*60))+'分钟'+'<br/>'
var s=parseInt(ms/(1000))+'秒'+'<br/>'
var ms=parseInt(ms)+'秒'+'<br/>'
var str = '';
str = show+d;
str += show+h;
str += show+m;
str += show+s;
str += show+ms;
document.getElementById('aa').innerHTML=str;
}
window.onload=setInterval('ti()',1000);
</script>
</body>

用document.write不行的
worldbl
2011-10-27 · TA获得超过3.3万个赞
知道大有可为答主
回答量:6885
采纳率:100%
帮助的人:3399万
展开全部
测试一下dt 的输出值,是不是就可以看出原因了。将 var dt=new Date('9/6/2012 00:00:00')
放在函数的前面试试。 句子 var dt=new Date('9/6/2012 00:00:00') 执行一次就行了,不必调用函数时都执行它。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王老吉呀
2011-10-27 · TA获得超过358个赞
知道小有建树答主
回答量:623
采纳率:0%
帮助的人:441万
展开全部
setInterval 是定时执行吧。 是不是应该放在大括号内呢。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式