9

我使用我在网上找到的这个脚本来在浏览器刷新时随机显示背景图像。

CSS

body{ 
background: no-repeat center center fixed; 
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}

JS

$(document).ready(function(){
var images=['images/001.jpg',
            'images/002.jpg',
            'images/003.jpg',
            'images/004.jpg',
            'images/005.jpg',];

var randomNumber = Math.floor(Math.random() * images.length);
var bgImg = 'url(' + images[randomNumber] + ')';

$('body').css({'background':bgImg, 'background-size':'cover', });

});

在大于 1150 像素的屏幕上工作正常,但小于 1150 像素时,图像开始堆积在另一个之上。无论屏幕尺寸如何,我怎样才能让它伸展。我不在乎图像是否在小屏幕上被裁剪,只要它填满了很多。

谢谢

4

3 回答 3

8

像这样

演示

JS

$(document).ready(function(){
    var classCycle=['imageCycle1','imageCycle2'];

    var randomNumber = Math.floor(Math.random() * classCycle.length);
    var classToAdd = classCycle[randomNumber];

    $('body').addClass(classToAdd);

});
于 2013-08-17T12:54:39.680 回答
3

我发现这篇文章 Random background images CSS3 解决了这个问题

<html>
<head>
<script type="text/javascript"> 
var totalCount = 5;
function ChangeIt() 
{
var num = Math.ceil( Math.random() * totalCount );
document.body.background = 'images/'+num+'.jpg';
document.body.style.backgroundSize = "cover";// Background repeat
}
</script>
</head>
<body> 

// Page Design 
</body> 
<script type="text/javascript"> 
ChangeIt();
</script> 
</html>

还是非常感谢 :)

于 2013-08-17T12:49:34.187 回答
0

使用被选为正确的 Falu 的答案,但在这篇文章中实现作为 #1 解决方案的 CSS 方法 -完美的整页背景图片

.imageCycle1{
background:url(bg.jpg) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
 filter:    progid:DXImageTransform.Microsoft.AlphaImageLoader(src='bg.jpg', sizingMethod='scale');
-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='bg.jpg', sizingMethod='scale')";}

它适用于各种屏幕尺寸。

于 2015-11-11T14:39:44.387 回答