2012-02-01 89 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