jquery循环通过不同的背景

我试图改变不同的背景,通过一个图像arrays循环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); 

这不起作用,我可以看到它正在循环,但我总是得到第三张图像。

任何的想法?

提前致谢。

毛罗

请试试〜

   

忘了这个〜

  for ( var i=0; i 

像这样的东西应该工作:

 var i = 0; function changeBG(){ //array of backgrounds var array = ["test.jpg", "test2.jpg", "test3.jpg",]; $('.round-mask').css('background-image', 'url("images/work/'+array[i]+'")'); if(i == array.length -1){ i= 0; } else{ i++; } } 

这确实有效。 2014年

 var i =0 ; //array of backgrounds var array = [ "1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg", "6.jpg", "7.jpg", ]; function changeBG(){ if ( i > array.length -1) { i = 0; } $('.slideContainer').css('background-image', 'url("img/backgrounds/'+array[i]+'")'); i++; } window.setInterval("changeBG()", 5000); 

试试这个

 var i =0 ; //array of backgrounds var array = ["test.jpg", "test2.jpg", "test3.jpg"]; function changeBG(){ if ( i > array.length -1) { i = 0; } $('.round-mask').css('background-image', 'url("images/work/'+array[i]+'")'); i++; } window.setInterval(changeBG(), 5000); 
 $(element).on("click",function(){ $("
").css("background-image", "url("+array[(i-1)]+")"); if (i == array.length){ i=1; } else { i++; } })

这是我的编辑,所以实际上它运行或

 $(element).css("background-image", "url("+array[(i-1)]+")"); i == bb.length ? i=1 : i++;