1

我正在尝试做的是构建一种循环通过两个for循环的方法,但是内部循环需要在每次迭代时都有延迟,但它不能是排队动画。

我希望这个工作的方式是,在开始时它会每隔一段时间触发每个元素,但不等待它们的动画完成。然后它转到下一行项目(第一次循环迭代)并在所有项目在前一行中淡出之前开始该行。

    var colLeng = Layout.columns,
        elemLeng,
        columnElements;

    // get number of columns
    for (var i = 0; i < colLeng; i++) {
        columnElements = $('.prvwImg[data-col="' + i + '"]');
        elemLeng = columnElements.length;

        for (var t = 0; t < elemLeng; t++) {
            columnElements.eq(t).delay(500 * t).fadeOut(400);
            //columnElements.eq(t).delay(500 * t).stop().fadeOut(400);
        }
    }

编辑:使用此代码,它可以很好地循环,但延迟实际上不起作用,因此它们同时淡出。

4

1 回答 1

2

根据每一列添加另一个延迟。

columnElements.delay(500 * i)

这将导致每个列元素的总延迟500*i + 500*t

于 2013-05-01T17:38:20.233 回答