如何停止jQuery脚本

时间:2011-11-25 14:02:29

标签: jquery

  

可能重复:
  Show and hide divs at a specific time interval using jQuery

我有一个jQuery脚本,它以特定的间隔显示和隐藏div。它工作正常,但我有一个问题,它的显示和隐藏div是圆形的,所以基本上它永远不会停止。 我怎么能停下来?让我们说它在显示3倍的div后停止。

$(function() {
    var timer = setInterval( showDiv, 5000);    
    var counter = 0;

    function showDiv() {
        if (counter == 0) { 
            counter++; 
            return; 
        }

        $('div','#container')
            .stop()
            .hide()
            .filter( function() { return this.id.match('div' + counter); })   
            .show('fast');

        counter == 3? counter = 0 : counter++; 
    }
});

4 个答案:

答案 0 :(得分:2)

使用setTimeout()clearTimeout()代替setInterval()

答案 1 :(得分:1)

试试这个:

$(function() {

  var timer = setInterval( showDiv, 5000);

  var counter = 0;
  var showTimes = 3;
  function showDiv() {
    if (counter ==0) { counter++; return; }

    $('div','#container')
      .stop()
      .hide()
      .filter( function() { return this.id.match('div' + counter); })   
      .show('fast');

    if(counter == 3){
       counter = 0;
       showTimes--;
       if(showTimes == 0)
           clearInterval(timer);
    }else{
       counter++; 
    }

  }

});

答案 2 :(得分:0)

将整个代码添加到函数中,并使用时间间隔

在for循环中调用该函数三次

答案 3 :(得分:0)

您现在可以使用setInterval。当您希望计时器停止时,请调用clearInterval,并将其从setInterval调用中获取的计时器传递给它。如果您愿意,可以在showDiv功能中执行此操作。