【发布时间】:2016-10-26 03:20:23
【问题描述】:
我有一组 div:
<div class="alert-container">
<div class="alert">alert 1 text</div>
<div class="alert">alert 2 text</div>
<div class="alert">alert 3 text</div>
</div>
我想一个一个地为它们制作动画,如下所示:
- alert 1 slideInDown > 等待 3s > alert 1 slideOutDown >
- alert 2 slideInDown > 等待 3s > alert 2 slideOutDown >
- alert 3 slideInDown > 等待 3s > alert 3 slideOutDown >
- 从 [1] 重复
我的JS目前的状态是这样的:
$('.alert-container .alert').each(function(index) {
$(this).addClass('animated slideInDown').show().one(animationEnd, function(){
$(this).removeClass('animated slideInDown').addClass('animated slideOutDown').one(animationEnd, function(){
$(this).removeClass('animated slideOutDown').hide();
});
});
});
我正在使用 animate.css,从添加的类可以看出,这目前具有同时为所有三个 .alert div 设置动画的结果,这是我所期望的。现在我只需要将其修改为一个一个动画,并无限重复。
即使在查看了其他 SO 帖子之后,我仍在努力思考在哪里使用 setInterval 和 $.each 以获得我想要的结果,以及我是否应该使用基于变量的 initialDelay在index 等上。
请帮忙。非常感谢。
【问题讨论】:
标签: javascript jquery each setinterval animate.css