我希望能够在延迟的情况下连续迭代数组。在下面的示例中,我使用了setInterval()。它可以正常工作,但是我想知道有没有更好的方法来实现这个功能?
var message = "Lorem ipsum dolor sit amet";
var print = message.split(" ");
var iterateOverMsg = function(arr) {
$('p').hide().append(arr[0]).fadeIn(3000).fadeOut(2000);
var i = 1;
setInterval(function() {
$('p').hide().text(arr[i]).fadeIn(3000).fadeOut(2000);
i++;
if (i >= arr.length) {
i = 0;
}
}, 5000);
}(print);
i = (i+1)% arr.length
替代i++; if (i >= arr.length) { i=0 }
。另外,对于fadeIn(3000).fadeOut(2000)
,不确定是否应该在回调函数中将fadeOut
调用? - Rajesh