【问题标题】:setInterval - javascript resetsetInterval - javascript 重置
【发布时间】:2012-02-01 01:32:08
【问题描述】:

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

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

【问题讨论】:

  • 您能多展示一下您的代码吗?你是什​​么意思“循环”?从循环中调用setInterval 会创建多个同时运行的间隔(当我看到这样做时,95% 的时间是由于对它的工作原理的误解)。 “重置间隔”是什么意思?

标签: javascript setinterval reset


【解决方案1】:

如果你把代码做成这样的函数,你可以随时调用它来重新开始。

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

startInterval();

【讨论】:

  • aa 和 bb 在本地范围内。我可以把它们传进去吗?
  • @MustaphaGeorge - 您可以在同一范围内定义 startInterval,它将自动访问aabb。如果您将它们传递进来,那么它们最终可能会变成单独的副本,并且不会在您期望的时候改变。
  • 谢谢,我这样做了,但我的代码似乎正在通过 startInterval 函数。能兼容jQuery吗?
  • @MustaphaGeorge - 您必须向我们展示更多代码,以便我们知道它为什么不能正常工作。 startInterval() 函数将立即执行并完成。它只是启动它自己进行的间隔计时器。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-13
  • 2013-11-28
  • 2015-01-18
  • 2014-09-05
  • 1970-01-01
相关资源
最近更新 更多