2013-07-22 41 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); 
}