2016-06-21 56 views
1

我正在尝试编写一些经常检查当前时间的JavaScript,如果它匹配某个第二个值来刷新页面并继续这样做,那么我的页面将始终根据当前时间以指定的第二个间隔刷新。例如:3:01:10 PM,3:01:15 PM,3:01:20 PM,3:02:10 PM等基于当前时间的Javascript页面刷新

我的代码如下似乎没有工作 - 任何想法我怎么能做到这一点?谢谢!

var seconds = new Date().getSeconds(); 
setTimeout(function(){ 
if (seconds == 10 || seconds == 15 || seconds == 20) { 
    window.location.reload(1); 
} 
}, 1000); 
+0

在'setTimeout'中放置'var seconds = new Date()。getSeconds();''。请致电 – BenG

+0

。注意到JS正在使用客户端时间 - 它可以是各种各样 –

回答

3

您的代码只有一次性得到second的值。你需要的功能中移动变量和更改setTimeoutsetInterval

setInterval(function(){ 
    var seconds = new Date().getSeconds(); 
    if (seconds == 10 || seconds == 15 || seconds == 20) { 
     window.location.reload(1); 
    } 
}, 1000); 
+1

非常感谢,这工作! – gabebt

0

你的问题是,你永远不更新的“秒”的值。尝试将其移入该功能。

var seconds; 
setTimeout(function(){ 
seconds = new Date().getSeconds(); 
if (seconds == 10 || seconds == 15 || seconds == 20) { 
    window.location.reload(1); 
} 
}, 1000);