我正在尝试更改循环遍历图像数组的 div 的不同背景,并每 5 秒计时一次。
这是我的代码:
function changeBG(){
//array of backgrounds
var array = ["test.jpg", "test2.jpg", "test3.jpg",];
for ( var i=0, len=array.length; i<len; ++i){
$('.round-mask').css('background-image', 'url("images/work/'+array[i]+'")');
}
}
window.setInterval(changeBG(), 5000);
这不起作用,我可以看到它正在循环,但我总是得到第三张图像。
有什么想法吗?
提前致谢。
毛罗
最佳答案
请尝试~
<script type="text/javascript">
var now = 0;
var int = self.setInterval("changeBG()", 1000);
var array = ["001.jpg", "002.jpg", "003.jpg", ];
function changeBG(){
//array of backgrounds
now = (now+1) % array.length ;
$('.round-mask').css('background-image', 'url("' + array[now] + '")');
}
</script>
忘记这个吧~
for ( var i=0; i<array.length; i++){
$('.round-mask').css('background-image', 'url("images/work/'+array[i]+'")');
}
关于jquery循环不同的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5977837/