Jquery计时器 - 无法停止everyTime循环

时间:2011-11-01 14:24:58

标签: jquery timer jquery-animate

我有一个小动画,让元素上下跳动。每个元素的速度和数量略有不同。 我正在使用Jquery Timers(http://plugins.jquery.com/project/timers)everyTime函数来无限循环动画。

我已成功地将元素上下移动,但我不能让它们停止使用stopTime()函数。

这是我到目前为止所做的:

function randomFromTo(from, to){
   return Math.floor(Math.random() * (to - from + 1) + from);
}

    function bobbing(command){

       if(command=='start'){
          $("#scroller .feature-headline").each(function (i) {
             $(this).everyTime(1, 'bobbing', function (){
                var bobAmount = randomFromTo(5, 10);
                var bobSpeed = randomFromTo(1200, 2000);
                $(this).animate ({marginTop: bobAmount}, bobSpeed, 'linear').animate ({marginTop: 0}, bobSpeed, 'linear');
             });
          });
       } else {
          $("#scroller .feature-headline").each(function (i) {
             $(this).stopTime('bobbing');
          });
       }

    }

我哪里错了?

1 个答案:

答案 0 :(得分:1)

This tutorial区分停止计时器和停止动画。这是完全停止动画的例子

$( "#ball_holder").stop(true).stopTime();

...所以我会尝试

$(this).stop(true).stopTime('bobbing');