我试图将div中的每个元素淡化为fadeIn(in)连续。我知道如何淡化整个区块而不是每个单独的区域。
http://jsfiddle.net/reggi/Km55n/
$('#button').click(function() {
setTimeout(function() {
$('#divWithDivs').fadeIn(500);
}, 300);
});
答案 0 :(得分:2)
你需要淡化前一个div的完成回调中的下一个div。
例如:
function fadeAll(elems) {
elems.filter(':hidden:first').fadeIn(1000, function() { fadeAll(elems); });
}
fadeAll($('#parent div'));
Demo
请注意,您需要隐藏孩子,而不是父母。
答案 1 :(得分:0)
$('#divWithDivs').children().first().fadeIn(500, function() {
$(this).next().fadeIn(500, arguments.callee);
});
这里的演示基于您的:http://jsfiddle.net/Km55n/2/
答案 2 :(得分:0)
您可以执行this:
之类的操作$('#button').click(function() {
var show_next = function(elem) {
if (elem.length) {
elem.fadeIn(300, function () {
show_next(elem.next());
});
}
};
show_next($('div#divWithDivs').children().first());
});