sko*_*kos 7 javascript setinterval
setInterval("FunctionA()", 1000);
Run Code Online (Sandbox Code Playgroud)
现在如何在5秒后清除此间隔,以便我可以实现 -
var i = setInterval("FunctionA()", 1000);
(After 5 seconds)
clearInterval(i);
Run Code Online (Sandbox Code Playgroud)
ant*_*rat 26
你可以使用setTimeout函数来做到这一点:
var i = setInterval(FunctionA ,1000);
setTimeout(function( ) { clearInterval( i ); }, 5000);
Run Code Online (Sandbox Code Playgroud)
将setTimeout用于clearInterval不是一个理想的解决方案.它会工作,但它会在每个间隔触发你的setTimeout.如果您只是清除间隔,这是可以的,但如果您在执行除清除间隔之外的其他代码时可能会很糟糕.更好的解决方案是使用计数器.如果你的间隔每1000毫秒/ 1秒发射一次,那么你知道它是否会发射5次,这是5秒.那更清洁了.
count=0;
var x=setInterval(function(){
// whatever code
if(count > 5) clearInterval(x);
count++;
}, 1000);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14158 次 |
| 最近记录: |