我想在javascript上设置动画背景大小和位置
下面是我要设置背景大小和位置的代码:我想在javascript上设置动画背景大小和位置,javascript,jquery,css,Javascript,Jquery,Css,下面是我要设置背景大小和位置的代码: $(document).ready(function() { var header = $('body'); //images var backgrounds = new Array( 'url(image1)', 'url(image2)', 'url(image3)', 'url(image4)' ); //animation var current = 0; function
$(document).ready(function() {
var header = $('body');
//images
var backgrounds = new Array(
'url(image1)', 'url(image2)', 'url(image3)', 'url(image4)'
);
//animation
var current = 0;
function nextBackground() {
current++;
current = current % backgrounds.length;
header.css('background-image', backgrounds[current]);
}
setInterval(nextBackground, 7000);
header.css('background-image', backgrounds[0]);
});
我该怎么做呢?如果你想要动画,那么在这种情况下,你应该使用随机函数: 函数的作用是:返回[0,1]范围内的浮点伪随机数,即从0(包含)到但不包括1(排除),然后可以将其缩放到所需的范围。实现会选择随机数生成算法的初始种子;用户无法选择或重置该种子 请注意,由于JavaScript中的数字是IEEE 754浮点数,具有从四舍五入到最近的偶数行为,因此下面函数的声明范围(不包括Math.random()本身的范围)并不精确。如果选择了非常大的范围(253或更高),在极少数情况下,计算通常排除的上限是可能的
// Returns a random number between min (inclusive) and max (exclusive)
function getRandomArbitrary(min, max) {
return Math.random() * (max - min) + min;
}
你的代码应该是
$(document).ready(function() {
var header = $('body');
//images
var backgrounds = new Array(
'url(image1)', 'url(image2)', 'url(image3)', 'url(image4)'
);
//animation
var current = 0;
function nextBackground() {
current++;
//current = current % backgrounds.length;
current = getRandomArbitrary(0,backgrounds.length;
header.css('background-image', backgrounds[current]);
}
setInterval(nextBackground, 7000);
header.css('background-image', backgrounds[0]);
});
按照你的方法
$(document).ready(function() {
var header = $('body');
//images
var backgrounds = new Array(
'url(image1)', 'url(image2)', 'url(image3)', 'url(image4)'
);
//animation
var current = 0;
function nextBackground() {
if(current>=backgrounds.length)
current = 0;
header.css('background-image', backgrounds[current]);
current++;
}
setInterval(nextBackground, 7000);
header.css('background-image', backgrounds[0]);
});
设置背景大小和位置有什么问题?您已经在使用
css()
方法了?此外,如果所有图像共享相同的设置,您可以在样式表中设置这些规则,而不是通过JS