2013-10-09 39 views
0

我想要一个箭头脉动的图像,当用户点击箭头时,div滑落,脉动箭头动画停止。当用户再次点击箭头时,div向上滑动,箭头继续跳动。你可以切换一个脉冲动画吗?

我可以切换。我可以脉冲。但是,我不确定如何去切换动画。如果有人能指出我会朝着正确的方向发展,那就太棒了!

非常感谢。

$(document).ready(function(){ 
{ 
    $(".arrow_down_grey").effect("pulsate", 
     {times:5}, 3000); 
    } 
    $('.arrow_down_grey').click(function(){ 
     $(".arrow_down_grey").stop().effect(); 
     $(".hiddenDiv").slideToggle(); 

}); 
}); 

回答

1

jQuery有一个.stop()停止动画的方法。您需要听取点击,然后使用.stop()相应地开始/停止动画。我认为你需要使用真正的标志来清除你的动画队列,所以停止不会“暂停”动画,但这取决于你。然后,您可以使用闭合来跟踪“切换状态”,并在您的div以其他方式切换时启动动画备份。

$('#animation').stop(false); 

jQuery的.stop文档:http://api.jquery.com/stop/

+0

谢谢。我意识到这一点。但是,如何再次启动动画onclick? – danelig

+0

你能提供你的动画代码吗?如果你这样做,我会告诉你如何添加一个闭包并重新启动/关闭 –

+0

非常感谢您的帮助。我将进一步编码并发布我的代码。 – danelig

0
$(document).ready(function() { 
    function pulsate() { 
     $(".pulsate").animate({ opacity: 0.2 }, 1200, 'linear') 
        .animate({ opacity: 1 }, 1200, 'linear', pulsate) 
        .click(function() { 
         $(this).animate({ opacity: 1 }, 1200, 'linear'); 
         $(this).stop(); 
        }); 
     } 

    pulsate(); 
}); 

此代码的工作,但你会如何再次启动脉冲动画?