我正在尝试为一组div
元素运行以下动画(假设为50),但是,$.each()
函数仅适用于数组中的第一个元素。
$.each(droplets, function(){
splashVanish(this);
});
function splashVanish(droplet) {
droplet.fadeOut(500, function(){
droplet.css({'top':Math.random()*600+'px','left':Math.random()*1400+'px'});
droplet.remove();
$("body").append(droplet);
//recursive call for infinite animation time
droplet.fadeIn(500,function(){splashVanish(droplet)});
});
}
当上面的代码运行时,只有数组中的第一个div
为fadesOut,随机化position和fadesIn以获得无限的动画持续时间。遗憾的是,所有其他49个div
都是静态的,并且没有执行相同的功能。
答案 0 :(得分:1)
根据您的评论,如果droplets
是div
的集合,则需要使用each()
。 $.each()
迭代数组。试试这个,看它是否有效。
droplets.each(function(){
splashVanish($(this));
});