Javascript .empty().append()设置超时
我正在尝试循环浏览更多的div,但找不到正确的语法。它只适用于两个div。我试过var src=state?”#第一组:#第二组:#第三组#; 我对剧本没有经验。有人能告诉我合并更多div的正确方法吗?非常感谢你的建议Javascript .empty().append()设置超时,javascript,jquery,Javascript,Jquery,我正在尝试循环浏览更多的div,但找不到正确的语法。它只适用于两个div。我试过var src=state?”#第一组:#第二组:#第三组#; 我对剧本没有经验。有人能告诉我合并更多div的正确方法吗?非常感谢你的建议 (function () { var delay = 5000; var state = 0; (function next() { state = 1 - state; var src = state ? '#div1'
(function () {
var delay = 5000;
var state = 0;
(function next() {
state = 1 - state;
var src = state ? '#div1' : '#div2' ;
var $contents = $(src).contents().clone().fadeIn(1999);
$('#indexscroll').empty().append($contents);
setTimeout(next, delay);
})();
})();
保留一个
div的列表
,在运行时递增状态
,并在列表结束时将其重置为0:
var delay = 5000;
var state = 0;
var myDivs = ['#div1', '#div2', '#div3' /* etc. */ ];
(function next() {
if (state >= myDivs.length)
state = 0;
var src = myDivs[state++];
var $contents = $(src).contents().clone().fadeIn(1999);
$('#indexscroll').empty().append($contents);
setTimeout(next, delay);
})();
JSFIDLE将非常有用!这段代码试图做什么?我把它放到一个jsbin中,立刻意识到它正在做圆顶循环和重复的动画。此外,当可以使用jQuery和$.Deferred对象管理动画时,它使用setTimeout。因此,剩下的问题是预期结果(规格)?
state?“#div1':'#div2'
是一种速记方法,只适用于两种结果,您可以将#div1、#div2和#div3放入数组中,然后循环使用。谢谢您,Paul!你的建议对我想做的事非常有效。顺致敬意,