我有十个div与" box"类。我想一个接一个地展示。 我试过这个:
$(document).ready( function() {
$(".box").each( function() {
$(this).fadeTo("fast", 1);
});
});
...但所有都是同时显示的。 我该怎么做?感谢
答案 0 :(得分:5)
您需要使用fadeTo
的“duration”参数。目前你正在为每个人“快速”通过。这不是(必然)一秒,并且每个元素的时间相同。相反,传递特定时间(以毫秒为单位)并为每个元素传递不同的时间。
您可以使用传递给index
的回调函数的each
参数:
$(document).ready( function() {
$(".box").each( function(i) {
$(this).fadeTo(1000 * i, 1);
});
});
或者,如果您希望每个持续时间都很快,但要将它们分开,您可以这样做:
$(document).ready( function() {
$(".box").each( function(i) {
$(this).delay(1000 * i).fadeTo("fast", 1);
});
});
在此处使用delay
会导致fadeTo
延迟传递的毫秒数。