使用jQuery触发顺序animated.css动画

时间:2014-07-04 15:51:04

标签: jquery css css3 animation animate.css

我尝试使用jQuery按顺序为元素设置动画。我试图实现的方法是添加动画fadeInDown"应该动画的每个元素上的类,延迟为500毫秒。

我遇到的问题是jQuery(或者我使用setTimetout函数)会同时触发所有动画。

这是我的代码:

$('.row-assets .asset').each(function(i) {
    $(this).delay((i++) * 500).addClass('animated').addClass('fadeInDown');
});

我做错了什么?

1 个答案:

答案 0 :(得分:1)

addClass()不是jQuery动画队列的一部分,因此不受delay()的影响。正确使用setTimeout应该有效:

<强> DEMO

var addClassToEl = function($el) {
    $el.addClass('animated fadeInDown');
};

$('.row-assets .asset').each(function(i, el) {
    setTimeout(function() {addClassToEl($(el))}, i++ * 500);
});

如果要为其更改设置动画,则必须确保您的类具有适当的CSS过渡。