如何使用jQuery动画更改背景图片?

我想使用慢动画改变背景图像,但它不工作
$('body').stop().animate({background:'url(1.jpg)'},'slow');

语法有问题吗?

解决方法

您可以通过将图像不透明度降低为0来获得类似的效果,然后更改背景图像,最后再次将图像退色。

这将需要一个div,背后的页面上的一切与身体一样广泛。

<body>
    <div id="bg"></div>
    ...
</body>

您可以使用CSS使其与页面一样宽:

#bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

然后动画化它的属性

$('#bg')
    .animate({opacity: 0},'slow',function() {
        $(this)
            .css({'background-image': 'url(1.jpg)'})
            .animate({opacity: 1});
    });

你可以得到更多的交叉效果,通过在这个之上放置第二个背景div,然后你可以褪色。

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...