Javascript 平滑地改变背景图片
我正在使用代码随时间改变背景图片:Javascript 平滑地改变背景图片,javascript,jquery,html,css,dom,Javascript,Jquery,Html,Css,Dom,我正在使用代码随时间改变背景图片: function getRandomInt(min, max) {return Math.floor(Math.random()*(max-min+1))+min;} function nextBackground() { var url = "url('images/" + getRandomInt(1, 33) + ".jpg')"; $body.css("background-image", url); setTimeout(
function getRandomInt(min, max)
{return Math.floor(Math.random()*(max-min+1))+min;}
function nextBackground()
{
var url = "url('images/" + getRandomInt(1, 33) + ".jpg')";
$body.css("background-image", url);
setTimeout(nextBackground, 7000);
}
setTimeout(nextBackground, 7000);
但我希望照片的变化不要那么剧烈。有什么方法可以做到这一点吗?您可以将CSS animationns与可设置动画的属性一起使用。。。但这个不是。答案应该帮助你解决你的问题,基本上你应该把你的图像放在另一个后面,并将旧图像的不透明度平滑地提高到100%
希望能有所帮助:)您可以使用CSS animationns和可设置动画的属性。。。但这个不是。答案应该帮助你解决你的问题,基本上你应该把你的图像放在另一个后面,并将旧图像的不透明度平滑地提高到100%
希望有帮助:)如果你对两张重叠的图像使用计时事件,并将不透明度从1缓慢调整到0,我认为这对你应该有用
如果您对两个重叠图像使用计时事件,并将不透明度从1缓慢调整为0,我认为这应该适合您
您可以通过淡入下一幅图像。下面是一个简单的示例,可以在
的背景下执行此操作,但只需更改nextBackground()
函数中使用的选择器,即可将其更改为文档的背景
//如果将所有映像路径放入一个数组中,那么代码的其余部分就会简单得多
变量图像=[”https://images.seeklogo.net/2016/09/facebook-icon-preview-1.png",
"https://www.brandsoftheworld.com/sites/default/files/styles/logo-thumbnail/public/062012/twitter-bird-light-bgs.png?itok=HAQz1yQN",
"http://seeklogo.com/images/L/linkedin-icon-logo-05B2880899-seeklogo.com.gif",
"https://www.youtube.com/yt/brand/media/image/YouTube-logo-full_color.png",
"http://3835642c2693476aa717-d4b78efce91b9730bcca725cf9bb0b37.r51.cf1.rackcdn.com/Instagram_App_Large_May2016_200.png",
"http://lescalier-montreal.com/restaurant-bar/wp-content/uploads/2014/07/small-red-googleplus-icon.png"];
函数getRandomInt(){
//不再需要最小和最大参数,只需要阵列的长度
返回Math.floor(Math.random()*images.length);
}
函数nextBackground(){
$(“div”).css(“背景图像”,“url”(+images[getRandomInt()]+”);
}
//对于连续运行的计时器,请使用用户setInterval,而不是setTimeout
设定间隔(下一个背景,1250)代码>
div{
背景尺寸:包含;
/*
CSS转换导致属性更改为转换为新值
有很多方法可以配置转换,但在这里,我们只是
表示在div上更改的任何属性都需要1秒才能转换
从旧值到新值。
*/
过渡:1s;
高度:250px;
宽度:250px;
}
您可以通过淡入下一幅图像。下面是一个简单的示例,可以在
的背景下执行此操作,但只需更改nextBackground()
函数中使用的选择器,即可将其更改为文档的背景
//如果将所有映像路径放入一个数组中,那么代码的其余部分就会简单得多
变量图像=[”https://images.seeklogo.net/2016/09/facebook-icon-preview-1.png",
"https://www.brandsoftheworld.com/sites/default/files/styles/logo-thumbnail/public/062012/twitter-bird-light-bgs.png?itok=HAQz1yQN",
"http://seeklogo.com/images/L/linkedin-icon-logo-05B2880899-seeklogo.com.gif",
"https://www.youtube.com/yt/brand/media/image/YouTube-logo-full_color.png",
"http://3835642c2693476aa717-d4b78efce91b9730bcca725cf9bb0b37.r51.cf1.rackcdn.com/Instagram_App_Large_May2016_200.png",
"http://lescalier-montreal.com/restaurant-bar/wp-content/uploads/2014/07/small-red-googleplus-icon.png"];
函数getRandomInt(){
//不再需要最小和最大参数,只需要阵列的长度
返回Math.floor(Math.random()*images.length);
}
函数nextBackground(){
$(“div”).css(“背景图像”,“url”(+images[getRandomInt()]+”);
}
//对于连续运行的计时器,请使用用户setInterval,而不是setTimeout
设定间隔(下一个背景,1250)代码>
div{
背景尺寸:包含;
/*
CSS转换导致属性更改为转换为新值
有很多方法可以配置转换,但在这里,我们只是
表示在div上更改的任何属性都需要1秒才能转换
从旧值到新值。
*/
过渡:1s;
高度:250px;
宽度:250px;
}
只需将nextBackground()
函数中使用的选择器更改为:$(“body”)
,将CSS选择器更改为body
。我在这里只使用了一个
,这样它就可以放入代码段窗口。别忘了投票,并把这个作为答案。祝你好运只需将nextBackground()
函数中使用的选择器更改为:$(“body”)
,将CSS选择器更改为body
。我在这里只使用了一个
,这样它就可以放入代码段窗口。别忘了投票,并把这个作为答案。祝你好运不需要覆盖。只是CSS转换。不需要覆盖。只是CSS转换。不需要覆盖。只是CSS转换。不需要覆盖。只是CSS转换。