jQuery一次显示一个元素?
我有一个已编制索引类的列表 – 在容器div的淡入淡出时,一次显示这些类的最佳方法是什么?
给它们一个公共类,并使用each()
[docs]方法在循环中执行fadeIn()
[docs] ,同时使用delay()
[docs]方法将每个delay()
给定的持续时间乘以索引。环。
$('li.someClass').hide().each(function( i ) { $(this).delay( i * 400 ).fadeIn(); });
每个元素将比前一个元素晚400毫秒开始。
示例: http : //jsfiddle.net/4ANCj/
function fade_in_recursive(e,duration,callback) { $(e).fadeIn(duration,function() { if($(e).next().length == 0) { if(typeof(callback) == 'function') { callback(); } return; } else { // Apply recursion for every sibling. fade_in_recursive($(e).next(),duration,callback); } }); } // End fade_in_recursive $(function() { fade_in_recursive($('ul li:first-child'),500); });