我是Javascript的新手,并且拥有一个几乎完美的代码,但需要对我的需求进行一些调整。
现在,此代码在我的页面正文中生成全屏背景幻灯片,而我希望它完成相同的工作,但是通过ID应用于特定的div。如果可能的话,我也希望它可以随机选择。
如果有任何帮助,我将非常感激。感谢。
<style>
body {
background-attachment:fixed;
background-repeat: no-repeat;
background-size:cover;
background-position: center;
}
</style>
<script language="JavaScript1.2">
//Specify background images to slide
var bgslides=new Array()
bgslides[0]="images/tickets1.jpg"
bgslides[1]="images/tickets2.jpg"
bgslides[2]="images/tickets3.jpg"
//Specify interval between slide (in miliseconds)
var speed=3000
//preload images
var processed=new Array()
for (i=0;i<bgslides.length;i++){
processed[i]=new Image()
processed[i].src=bgslides[i]
}
var inc=-1
function slideback(){
if (inc<bgslides.length-1)
inc++
else
inc=0
document.body.background=processed[inc].src
}
if (document.all||document.getElementById)
window.onload=new Function('setInterval("slideback()",speed)')
</script>
答案 0 :(得分:0)
试试这个:
function slideback(){
var imageToShow;
imageToShow=$(bgslides).eq(Math.floor(Math.random() * bgslides.length)].src;
document.body.background=imageToShow;
}
<强>更新强>
function slideback(){
var imageToShow;
var imageToPick=pickRandrom(bgslides.length);
imageToShow=$(bgslides).eq(imageToPick].src;
document.body.background=imageToShow;
}
function pickRandom(range)
{
if (Math.random)
return Math.round(Math.random() * (range-1));
else {
var now = new Date();
return (now.getTime() / 1000) % range;
}
}