0

我的想法是它会是这样的:

var ads = newArray[];

ads[0] = "#classes";
ads[1] = "#fluke";
ads[2] = "#pelican";

for (i = 0, i <= 2, i++) {
    $(ads[i]).delay(1500).show();
}

对于我正在做的事情,这是一个非常粗略的想法。最终,我希望让它滚动浏览网站的广告。不知何故,我绊倒了它的逻辑。事实上,我希望这段代码延迟 1500,然后显示所有 div。最终目标是一个接一个地展示它们。

4

2 回答 2

1

来自以下文档delay()

只有队列中的后续事件被延迟;例如,这不会延迟不使用效果队列的 .show() 或 .hide() 的无参数形式。

下面应该解决这个问题,因为它会触发效果队列show()根据自己的喜好调整参数。

$('#target1').delay(1500).show('fast');

小提琴

顺便说一句,没有理由构建一个数组。您可以一次选择多个元素:

$('#target1, #target2').show();

再看一个小提琴

于 2012-06-06T00:54:36.570 回答
0
$(document).ready(function() {
var loopStart = '0';
var loopEnd = '3';
$('#class').css({display: 'inline-block'});
function adLoop() {
        setTimeout(function() {
            if (loopStart+1 == 1 && loopStart+2 == 2) {
                $('#fluke').css({display: 'none'});
                $('#pelican').css({display: 'none'});
                $('#class').css({display: 'inline-block'});
            }
            if (loopStart+1 == 2 && loopStart+2 == 3) {
                $('#class').css({display: 'none'});
                $('#pelican').css({display: 'none'});
                $('#fluke').css({display: 'inline-block'});
            }
            if (loopStart+1 == 3 && loopStart+2 == 4) {
                $('#class').css({display: 'none'});
                $('#fluke').css({display: 'none'});
                $('#pelican').css({display: 'inline-block'});
            }
            if (loopStart+1 == 4 && loopStart+2 == 5) {
                $('#fluke').css({display: 'none'});
                $('#pelican').css({display: 'none'});
                $('#class').css({display: 'inline-block'});
                loopStart = 0;
            }
            loopStart++;
            if (loopStart <= loopEnd) {
                adLoop();
            }
        }, 5000)
}
adLoop();
})

这就是我想出的。我想对数组做同样的事情。

于 2012-06-07T17:13:31.723 回答