这是一个小 jQuery 插件,它会有所帮助:
jQuery.slowEach = function( array, interval, callback ) {
if( ! array.length ) return;
var i = 0;
next();
function next() {
if( callback.call( array[i], i, array[i] ) !== false )
if( ++i < array.length )
setTimeout( next, interval );
}
};
jQuery.fn.slowEach = function( interval, callback ) {
jQuery.slowEach( this, interval, callback );
};
包括上面的插件。它添加了一个slowEach
方法和函数:$(...).slowEach(interval,callback)
和$.slowEach(interval,delay,callback)
. 它迭代一个对象或 jQuery 选择,delay
每次迭代后等待几毫秒。
从上面编辑您的代码以使用slowEach
:
jQuery.slowEach(
slidesArray, 5000, function (index, value) {
var linkHref = value[1];
var imageSource = value[0];
$("#slider").html("<a href='" + linkHref + "'><img src='" + imageSource + "'></a>").fadeOut(5000);
});