有没有办法让每60秒执行一些JS代码?我认为可能有一个while
循环,但有更简洁的解决方案吗? JQuery欢迎,一如既往。
答案 0 :(得分:103)
使用setInterval:
setInterval(function() {
// your code goes here...
}, 60 * 1000); // 60 * 1000 milsec
该函数返回一个ID,您可以使用clearInterval清除您的间隔:
var timerID = setInterval(function() {
// your code goes here...
}, 60 * 1000);
clearInterval(timerID); // The setInterval it cleared and doesn't run anymore.
“姐妹”功能是setTimeout / clearTimeout查找它们。
如果你想在页面init上运行一个函数,然后在60秒后,120秒后运行......:
function fn60sec() {
// runs every 60 sec and runs on init.
}
fn60sec();
setInterval(fn60sec, 60*1000);
答案 1 :(得分:11)
您可以使用setInterval
。
<script type="text/javascript">
function myFunction () {
console.log('Executed!');
}
var interval = setInterval(function () { myFunction(); }, 60000);
</script>
通过设置clearInterval(interval)
来禁用计时器。
请参阅此小提琴:http://jsfiddle.net/p6NJt/2/