2013-12-08 52 views
0

我已应用动画显示页面上的元素。jquery动画队列,仅关闭特定项目的队列

当按下按钮显示注册表单时,如果下一部分的动画还在继续,我按下了“注册”按钮,包含他作为延迟等待底部的动画结束。

所以我应用于动画:

$(document.body).on('appear', '.animate-from-left', function() { 
     jQuery(this).each(function() { 
      jQuery(this).delay(150).animate({opacity: 1, left: "0px"}, {duration: 2000, queue: false}); 
     }); 
    }); 

但现在谈到另一个小问题,动画不是在等待了,所以如果我快速滚动的DOM,开始对所有项目的动画。

所以,问题是:

我可以确保的是,当我选择的形式 - 注册的开口部的按钮的动画不只是在等待?

我希望我很清楚。

这是问题的一个例子:JSFiddle

如果您选择注册按钮动画结束下面的章节之前,开口要推迟!

回答

0

好吧,

我找到了解决方案!

$('#open-signup').on('click', function(){ 
    $('.animate-from-left').dequeue(); 
    $('.animate-from-right').dequeue(); 
    $('.animate-from-top').dequeue(); 
    $('.animate-from-bottom').dequeue(); 
    $(this).dequeue(); 
    .... 

这里JSFiddle