加载时淡入背景图像



我想使用 jquery 加载一个随机背景图像。下面是我正在使用的脚本,它在刷新时显示随机背景,但没有褪色效果。如何在加载时创建淡入淡出效果。注意:我不想循环随机图像。

$(document).ready(function() {
  var images = ['01.jpg', '02.jpg', '03.jpg', '04.jpg', '05.jpg', '06.jpg', '07.jpg', '08.jpg', '09.jpg', '10.jpg'];
  $('.about').css({'background-image': 'url(../img/bg/' + images[Math.floor(Math.random() * images.length)] + ')'});
  ('.about').fadeIn(1000);
});

$(document).ready(function() {
  var images = ['http://funmozar.com/wp-content/uploads/2014/09/Beautiful-Yellow-Birds-06.jpg', 'http://petblaster.com/images/Birdwall.jpg', 'http://www.nscblog.com/wp-content/uploads/2014/04/birds-314989.jpg'];
  var url = images[Math.floor(Math.random() * images.length)];
  var img = new Image();
  img.onload = function(){
    $('.about').css({'background-image': 'url('+url+')', 'background-size' : 'contain'});
    $('.about').fadeIn(1000);
  }
  img.src = url;
  
  
});
.about{
  width: 400px;
  height: 400px;
  display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="about"></div>

这将使用 new Image 预加载图像。附有onload。当他加载射击时,它会将背景设置为.aboutdiv 并将其淡入。

我已经更改了网址以实际显示一些结果。

最新更新