我正在尝试使用jquery 0.5
函数在每次迭代后添加each()
增量。我必须在animatoin-delay
上添加li
属性,该值应增加(0.5
),我可以在文档加载时为其设置动画。
<ul class="social-link">
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
$('ul.social-link li').each(function(i){
plus = i - 0.5;
$(this).addClass('animated fadeIn').css('animation-delay',plus+'s');
});
我已经尝试了上面的代码,但它在第一次迭代后工作,在第一次迭代时它给定0.5
但在此之后它添加(1.5,2.5,3.5)1而不是0.5。我知道我的逻辑不正确。任何人都可以指导我使用each()
函数可能与否。我可以使用css
来完成它,但如果使用jquery完成它会很好。如果有人指导我,我将不胜感激。谢谢
答案 0 :(得分:3)
在您的代码中,i是您的选择器返回的集合的索引。所以,1-0.5,2-0.5,3-0.5等。如果我正确理解你,你想每次都添加.05,所以在.each()
之外声明加号如此:{{1并在循环内增加它:var plus = 0;
。它会像这样增加:.5,1,1.5,2,2.5等。
答案 1 :(得分:2)
试试这个
var plus = 0;
$('ul.social-link li').each(function(i) {
plus += 0.5;
$(this).addClass('animated fadeIn').css('animation-delay', plus + 's');
});
答案 2 :(得分:0)
你可以通过乘法来做到这一点:
$('ul.social-link li').each(function(i){
$(this).addClass('animated fadeIn').css('animation-delay',0.5 + i*0.5 + 's');
});