为了账号安全,请及时绑定邮箱和手机立即绑定

为何不能实时刷新

window.onload=function(){
       function smove(){
                var now=new Date();
                var end=new Date("2017,8,3");
                var LeftTime=document.getElementById("LeftTime");
                var time=end.getTime()-now.getTime();
                var d=parseInt(time/(1000*60*60*24));
                var h=parseInt(time/(1000*60*60))-(d*24);
                var m=parseInt(time/(1000*60))-(d*24*60)-(h*60)
                var s=parseInt(time/(1000))-(d*24*60*60)-(h*60*60)-(m*60);
               LeftTime.innerHTML=d+"天"+h+"小时"+m+"分钟"+s+"秒"; 
       }
        setInterval(smove(),500);
} 
这样为何不能实时刷新,只能手动刷新才能看见时间在缩短。难道是setinterval()
获取不了smove()的元素?还是
- - - - - - - - -  - - - - - - - - - - - - - - - - - - - - - - - - - - - -分割线
window.onload=function(){
        setInterval(function(){
                var now=new Date();
                var end=new Date("2017,8,3");
                var LeftTime=document.getElementById("LeftTime");
                var time=end.getTime()-now.getTime();
                var d=parseInt(time/(1000*60*60*24));
                var h=parseInt(time/(1000*60*60))-(d*24);
                var m=parseInt(time/(1000*60))-(d*24*60)-(h*60)
                var s=parseInt(time/(1000))-(d*24*60*60)-(h*60*60)-(m*60);
               LeftTime.innerHTML=d+"天"+h+"小时"+m+"分钟"+s+"秒";    
        },500);    
}
这样写确可以


正在回答

2 回答

如果将第一个代码只改动

setInterval(smove,500);  //就能实现实时变动

//传入smove()

    只会弹出一次,调用setInterval函数,传递给它的两个参数一个是smove()函数的返回值,一个是1000ms,因    此只会执行smove函数一次

//传入smove

调用setInterval函数,将函数smove和1000ms作为参数分别传递给它,每隔一段时间便执行smove 函数

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
倒计时效果
  • 参与学习       55626    人
  • 解答问题       242    个

电商网站限时抢购倒计时效果计算思路和方法,前端开发必备技术

进入课程

为何不能实时刷新

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信