显示随机背景IMage

时间:2012-05-19 10:58:22

标签: javascript jquery image background

我有一个带背景图片的元素,是否可以将该背景图片更改为我拥有的随机图片网址?

因此,当用户加载页面时,将显示随机背景图像。

更新


感谢所有回答我问题的人,你们都很棒!

6 个答案:

答案 0 :(得分:2)

是。这是一个例子:

$(document).ready(function() {
    $("body").css("background-image", "url("+your_random_image_url+")");
});

答案 1 :(得分:1)

将图像文件命名为“image1.jpg”“image2.jpg”等。生成随机数

Math.floor(Math.random()*range_of_your_image_nums+1);

然后使用此号码将随机图像加载为

$("#id_of_your_element").css("background","<url>");

答案 2 :(得分:1)

以下是执行此操作的示例脚本,下面是我执行此操作的方式。使用IE 6和Firefox(2和3)进行测试。 背景图片固定在右侧网站上,不会滚动。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
<script type="text/javascript">
function changeImg(imgNumber) {
var myImages = ["images/image0.jpg", "images/image1.jpg", "images/image2.jpg", "images/image3.jpg"];
var imgShown = document.body.style.backgroundImage;
var newImgNumber =Math.floor(Math.random()*myImages.length);
document.body.style.backgroundImage = 'url('+myImages[newImgNumber]+')';
}
window.onload=changeImg;
</script>
<style type="text/css">
.bg {background-attachment:fixed; background-repeat: no-repeat; background-position:top right;}
</style>
</head>
<body class="bg">
<p>Some text</p>
<!-- put a lot text lines here to see that the background stays fixed. -->
<p>Some text</p>
</body>
</html>

答案 3 :(得分:1)

保留包含所有背景的数组,并在$(document).ready()

加载随机数组
$(document).ready(function() {
    var backgrounds = ['link1', ..., 'linkN'];
    $("#yourElementId").css("background-image: url("+backgrounds[Math.round(Math.random() * (backgrounds.length - 1))] +")");
});

答案 4 :(得分:1)

var backgrounds = ['',
                   'bg3.jpg',
                   'bg1.jpg',
                   'bg1013.jpg',
                   'bg123.gif',
                   'bg553.jpg',
                   'bg663.png',
                   'bgdaas3.jpg',
                   'bgdw3.jpg',
                   'bgdd3.jpg',
                   'dasd.png'
                  ];

$('#elementID').css('background', 'url('+backgrounds[Math.random()*10]+')');

答案 5 :(得分:1)

$(document).ready(function() {
    var images = ["the-nude-art.jpg", "the-secret-pic.jpg","topless-pic.png","oolala-pic.jpg"]; 
    var rand_image = images[Math.floor(Math.random() * images.length)];
    var my_site_image_folder_path  = 'http://www.xyz.com/images/';
    $('body').css('background-image', 'url("' + my_site_image_folder_path + rand_image + '")');
});