Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 平滑地改变背景图片_Javascript_Jquery_Html_Css_Dom - Fatal编程技术网

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转换。