// IIFE
(function runForever(){
// Do something here
setTimeout(runForever, 5000)
})()
// Regular function with arguments
function someFunction(file, directory){
// Do something here
setTimeout(someFunction, 5000, file, directory)
// YES, setTimeout passes any extra args to
// function being called
}
<script>
var time = 3670;
window.setInterval(function(){
// Time calculations for days, hours, minutes and seconds
var h = Math.floor(time / 3600);
var m = Math.floor(time % 3600 / 60);
var s = Math.floor(time % 3600 % 60);
// Display the result in the element with id="demo"
document.getElementById("demo").innerHTML = h + "h "
+ m + "m " + s + "s ";
// If the count down is finished, write some text
if (time < 0) {
clearInterval(x);
document.getElementById("demo").innerHTML = "EXPIRED";
}
time--;
}, 1000);
</script>
9
你可以使用setInterval在页面上注册一个间隔,即:
setInterval(function(){
//code goes here that will be run every 5 seconds.
}, 5000);
814
你不需要jquery,在普通的javascript中,以下将工作!
window.setInterval(function(){
/// call your function here
}, 5000);
7 回答
setInterval
和setTimeout
都可以为你工作(正如@Doug Neiner和@John Boker现在写的那样指向setInterval
) .有关两者的更多解释,请参阅here以查看最常用的套件以及如何停止每个套件 .
上面提到的函数无论是否在先前的调用中完成都会执行,一旦执行完成,它就会在每x秒后运行一次
第一个答案只是一个小小的提示 . 如果您的功能已经定义,请参考该功能但不要调用它!所以不要在函数名后添加任何括号 . 就像:
一个很好的例子,可以在哪里订阅setInterval(),并使用clearInterval()来停止永久循环:
调用此行来停止循环:
你可以使用window.setInterval和time必须以毫秒为单位定义,在下面的情况下,函数将在每一秒后调用(1000毫秒)
你可以使用setInterval在页面上注册一个间隔,即:
你不需要jquery,在普通的javascript中,以下将工作!
要停止循环,您可以使用