2012-01-29 63 views

回答

3
var images = ['banner1.jpg', 'banner2.jpg', 'banner3.jpg']; 
var i = 0; 

setInterval(function(){ 
    $('body').css('background-image', function() { 
     if (i >= images.length) { 
      i=0; 
     } 
     return 'url(' + images[i++] + ')'; 
    }); 
}, 5000); 

更新: 如果你wan我建议将所有横幅图片放入一张图片,并将其设置为身体的背景图片,然后使用背景位置的.animate方法更改横幅图片。

+0

我将不得不保留在CSS'body {background-image:url(../ images/banner1.jpg)'? – 2012-01-29 13:49:22

+0

我试过你的代码,它的工作,但我想顺利地改变图像。 – 2012-01-29 13:49:43

+0

@JitendraVyas你可以保留它,或者先设置一次使用jQuery的css。 – xdazz 2012-01-29 13:51:01

3

只需设置元素的background-image

$(elem).css('background-image', 'url(banner2.jpg)'); 

编辑以淡入淡出,你需要褪色的容器元素:

$(elem).fadeOut('fast', function() { 
    $(elem).css('background-image', 'url(banner2.jpg)') 
     .fadeIn('fast'); 
}); 
+0

图像将如何与淡入和出更改 – 2012-01-29 13:30:37

+0

查看修订后的答案 – ori 2012-01-29 13:32:40

+2

另请注意,您必须预先加载图片才能在第一次访问该页面时生效。 – rcdmk 2012-01-29 13:42:11

0

我想说这个信息是非常有用的,它的工作原理。我尝试不同的东西使用JQuery:

HTML:

<div id="pic"></div> 
<div id="bat"></div> 

CSS:

#pic { 
    position: absolute; 
    z-index: -98; 
    top: 0; 
    left: 0; 
    background-image: url ('http://wallpaperfast.com/wp-content/uploads/2013/05/Calm-sea-breeze-notebook-background-images-Desktop-Wallpaper.jpg'); 
    display: none; 
} 
#bat { 
    position: absolute; 
    z-index: -98; 
    top: 0; 
    left: 0; 
    background-image: url('http://www.designmyprofile.com/images/graphics/backgrounds/background0172.jpg'); 
    display: none; 
} 

JS:

$('#pic').css({ 
    height: $(window).height(), 
    width: $(window).width() 
}).fadeIn('slow', function() { 
    $('#pic').css('background-image', 'url(http://wallpaperfast.com/wp-content/uploads/2013/05/Calm-sea-breeze-notebook-background-images-Desktop-Wallpaper.jpg)'); 
    $('#pic').fadeOut('slow'); 
    $('#pic').fadeIn('slow'); 
}); 

jsfiddle