2012-02-01 107 views
0

我在循环中使用了setInterval。一旦满足条件(aa = bb)并且间隔被清除,是否可以重置间隔?setInterval - javascript reset

var interval = setInterval(function() 
{          
    if(aa == bb) 
    { 
    clearInterval(interval);     
    } 
} , 10000); 
+0

您能否展示一些您的代码?你是什​​么意思“一个循环”?在循环中调用'setInterval'会创建多个同时运行的时间间隔(当我看到完成时的95%时间是由于对其工作原理的误解造成的)。 “重置间隔”是什么意思? – nnnnnn 2012-02-01 02:48:39

回答

0

如果你让代码成为这样的函数,你可以随时调用它来启动它。

function startInterval() { 
    var interval = setInterval(function() {          
     if(aa == bb) { 
     clearInterval(interval);     
     } 
    }, 10000); 
} 

startInterval(); 
+0

aa和bb在本地范围内。我可以通过他们吗? – 2012-02-01 01:37:28

+0

@MustaphaGeorge - 你可以在同一个范围内定义startInterval,它会自动访问'aa'和'bb'。如果你通过他们,他们可能会得到单独的副本,当你期望他们时不会改变。 – jfriend00 2012-02-01 01:51:41

+0

谢谢,我这样做了,但我的代码似乎是通过startInterval函数爆炸。可以与jQuery兼容吗? – 2012-02-01 02:01:05