Я бы делал это в цикле, если вы говорите о последовательном приращении (и до тех пор, пока они отображаются в том же порядке на странице).
$("#div1,#div2,#div3,#div4").each(function( idx ) {
$(this).delay( idx * 1000 ).fadeIn("slow");
});
Пример: http://jsfiddle.net/km66t/
Используется индекс, переданный .each()
для увеличения задержки.
Итак, вы эффективно делаете:
$("#div1").delay( 0 ).fadeIn("slow");
$("#div2").delay( 1000 ).fadeIn("slow");
$("#div3").delay( 2000 ).fadeIn("slow");
$("#div4").delay( 3000 ).fadeIn("slow");
РЕДАКТИРОВАТЬ: Чтобы, надеюсь, решить проблему в комментарии ниже, вы могли бы вместо этого сохранить массив задержек, которые вы хотите использовать, и получить доступ к соответствующему индексу массива, используя индекс из .each()
.
var delays = [0, 1000, 2000, 4000];
$("#div1,#div2,#div3,#div4").each(function( idx ) {
$(this).delay( delays[ idx ] ).fadeIn("slow");
});