$(document).ready(function(){
setInterval(swapImages(),1000);
function swapImages(){
var active = $('.active');
var next = ($('.active').next().length > 0) ? $('.active').next() : $('#siteNewsHead img:first');
active.removeClass('active');
next.addClass('active');
}
});
我有13个图像包含在div中。第一个有一个名为active的类,这意味着它被显示。
交换图像功能选择活动图像并将其隐藏,并使下一图像处于活动状态。
但是,当页面加载时,该函数只能正常工作一次,而不是循环。
有什么想法吗?
答案 0 :(得分:26)
这是因为您正在执行不引用它的函数。你应该这样做:
setInterval(swapImages,1000);
答案 1 :(得分:8)
请勿通过调用将swapImages
的结果传递给setInterval
。只需传递函数,如下所示:
setInterval(swapImages, 1000);
答案 2 :(得分:2)
//使用setInterval
概念的简单示例$(document).ready(function(){
var g = $('.jumping');
function blink(){
g.animate({ 'left':'50px'
}).animate({
'left':'20px'
},1000)
}
setInterval(blink,1500);
});
答案 3 :(得分:-1)
你可以像这样使用它:
$(document).ready(function(){
setTimeout("swapImages()",1000);
function swapImages(){
var active = $('.active');
var next = ($('.active').next().length > 0) ? $('.active').next() : $('#siteNewsHead img:first');
active.removeClass('active');
next.addClass('active');
setTimeout("swapImages()",1000);
}
});
答案 4 :(得分:-1)
尝试在ready事件之外声明该函数。
$(document).ready(function(){
setInterval(swapImages(),1000);
});
function swapImages(){
var active = $('.active');
var next = ($('.active').next().length > 0) ? $('.active').next() : $('#siteNewsHead img:first');
active.removeClass('active');
next.addClass('active');
}