0

我有一个带有 ID 的数组,我正在从另一个页面加载带有这些 ID 的元素。

    $.each(idArr, function() {
        var divline = '<div class="line" id="' + this + '">';
        var url = 'allitems.php #' + this + ' div';
        $('#the-list').append($(divline).load(url).hide().fadeIn());
    });

它工作正常,但我希望加载的元素一次淡入一个,或者至少不是一次全部淡入。我无法弄清楚如何在我的代码中使用 .delay。或者还有其他方法吗?

谢谢 :)

4

3 回答 3

1

一个简单的解决方案是使用setTimeout

$.each(idArr, function(i) {
    var divline = '<div class="line" id="' + this + '">';
    var url = 'allitems.php #' + this + ' div';
    setTimeout(function(){
        $('#the-list').append($(divline).load(url).hide().fadeIn());
    }, i*1000);
});
于 2013-02-01T17:23:16.947 回答
1

试试这个方法:

$(".elements").each(function(i, e) { $(e).delay(i * 400).fadeIn(400); });
于 2013-02-01T17:23:25.453 回答
1
$.each(idArr, function(i,el) {
    var divline =  $('<div />', {'class':'line', id: el}),
        url = 'allitems.php #' + el + ' div';
    $('#the-list').append(divline.load(url).hide().delay(i*1000).fadeIn());
});
于 2013-02-01T17:23:50.637 回答