clearInterval无法按预期工作

时间:2012-12-11 10:45:08

标签: jquery

我有以下代码用于拨打div。

我使用clearInterval来阻止嘎嘎声,但似乎不起作用。

有什么好主意的吗?

squares = $('.' + square_class); 
var rattle; 

 rattle = setInterval(function() {
 squares.delay(2000).effect('shake', { times:4, distance: 5 }, 100);
 }, 2000);

clearInterval(rattle);

3 个答案:

答案 0 :(得分:1)

这就是我看到这个设置的方式。如果不是,请告诉我们

<script>
var rattle;

window.onload=function () {

  rattle = setInterval(
    function() {
      squares.delay(2000).effect('shake', { times:4, distance: 5 }, 100); 
    }, 
  2000);

  setTimeout(function() { clearInterval(rattle); },10000);
}
</script>

答案 1 :(得分:1)

您的代码中存在一些错误。您应该像这样修复它:

var rattle = setInterval(function(){
    squares.delay(2000).effect('shake', { times:4, distance: 5 }, 100);
}, 1500);

然后

clearInterval( rattle );

答案 2 :(得分:0)

如果你想让实际的动画效果停止而不经历它的完整持续时间,请使用jQuery stop()方法

clearInterval(rattle);
squares.stop();

API参考:http://api.jquery.com/stop/