2013-07-22 45 views
1

我想在JavaScript設置一個計時器,以以往任何時候都執行一個功能狀況半秒,如果時間超過兩分鐘計時器應該停止時,在JavaScript設置一個計時器:調用函數

我代碼:

function InitialiseCountDown() { 
    var x =setInterval(function(){ 
      CreateImage(); 
     },500); 
      if(x== ?) // what should i do here to make sure the two minites are done 
      { 
     ClearInterval(x); 
      } 
    } 
+0

http://stackoverflow.com/questions/11363401/javascript-how-to-clear-in特定時間後的特定時間 –

+1

正如附註:您應該知道,'setInterval'最有可能不會在500毫秒內運行間隔。兩次調用之間的實時取決於您正在執行的其他操作。所以你應該問自己,如果你想讓它運行兩分鐘,無論它在那段時間內計算多少次迭代(Olegas的答案),或者如果你想要它運行正確的迭代240次,無論它需要多少時間最後(在這種情況下,你應該使用一個計數器,每次呼叫你增加500)。 – basilikum

回答

1

你應該嘗試

function InitialiseCountDown() { 
    var x =setInterval(function(){ 
       CreateImage(); 
      },500); 

    setTimeout(function() { 
     clearInterval(x); 
      }, 2000*60); 

} 
3
function InitialiseCountDown() { 
    var start = +new Date(); 
    var x = setInterval(function(){ 
     CreateImage(); 
     if(+new Date() - start > 2 * 60 * 1000) { 
      clearInterval(x); 
     } 
    },500); 
}