我正在从左到右淡化一系列元素,我正在寻找一种优雅的方式来做到这一点,而不使用嵌套函数。队列似乎可以挽救局面,但我不明白为什么它会这样工作。
这有效:
$('.item').queue(function(next) {
$(this).delay(500).animate({opacity: 1}, 1000);
});
$('.item').queue(function(next) {
$(this).parent().next('.item').dequeue();
next();
});
$('.intro i:first').dequeue();
这不会:
$('.item').queue(function(next) {
$(this).delay(500).animate({opacity: 1}, 1000);
$(this).parent().next('.item').dequeue();
next();
});
$('.item').dequeue();
它一次将它们全部淡化。
我的理解是,队列在动画或出队触发时附加了一系列要执行的项目。那么......为什么这有效?