我想在javascript上设置动画背景的大小和位置
i want to set animated background size and position on javascript
下面是我想要设置背景大小和位置的代码:
$(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]);
});
我该怎么做呢?
如果你想要动画那么在这种情况下你应该使用random函数:
Math.random()函数返回[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]);
});
相关文章:
- 如何在显示侧边栏时禁用背景,单击除侧边栏之外的任何位置都会关闭侧边栏
- jQuery-仅更改Y轴的CSS背景位置
- javascript背景图像位置循环
- jQuery位置选择器输入样式背景和焦点
- 仅为背景位置X轴制作动画
- 如何将CSS背景位置属性从百分比转换为像素
- 使用 jQuery 限制滚动时的垂直背景位置
- 如何在每次页面重新加载时更改渐变背景,同时保持光标位置元素处于活动状态
- 视差'背景图像/位置/附件'jQuery的动画很不稳定
- 将Div锁定在有背景的固定位置
- 视差/背景位置的特征检测
- 根据背景位置更改光标 URL
- 精灵图像的背景位置在 IE 中不起作用,用于倒计时时钟
- 如何在背景图像到达底部时停止背景位置更改
- JS/CSS 库,用于根据指针位置对背景进行动画处理
- IE10 背景位置 x 的解决方法
- 使用单击图像映射更改设置为背景的精灵图像的位置
- 如果位置固定,则更改背景颜色
- 根据当前背景位置更改背景位置
- 在 Javascript 中获取 posX 和 posY 的背景位置