我正在尝试制作某个班级的所有元素,但每个元素都会延迟。
此代码会立即显示所有元素,但我想在每个元素之间等待1秒钟。
$('.notify').each(function(index) {
$(this).fadeIn('slow');
});
我尝试过使用setTimeout,但它“丢失”了元素变量(名为'this'的变量)。我也尝试过使用.delay(),但只是让所有元素在1秒后显示出来。
答案 0 :(得分:2)
你可以这样做:
$('.notify').each(function(i) {
$(this).delay(i * 1000).fadeIn('slow');
});
这会在第一个瞬间消失,第二个在1000ms之后等等......如果需要的话只需调整延迟,如果需要,可以在第一个之前添加一些ms来创建延迟。
注意:此延迟位于每个.fadeIn()
的 start 之间,如果您想在完成淡入后等待一整秒,请添加持续时间到1000(默认持续时间是400毫秒)。