用Jquery淡化图像

时间:2013-11-08 17:45:28

标签: jquery

我正在使用此代码以淡入和淡出我网站上的背景图片。

var image = $('#image-holder');
    image.fadeOut(1000, function () {
        image.css("background", "url('images/design-" + newColor + ".jpg')");
        image.fadeIn(1000);
    });

但是当我尝试时:

  var image = $('#image-holder');
    image.fadeIn(1000, function () {
        image.css("background", "url('images/design-" + newColor + ".jpg')");
        image.fadeIn(1000);
    });

FadeIn效果不会触发,任何想法为什么?我希望背景图片不会淡出。

3 个答案:

答案 0 :(得分:2)

如果您希望图像淡入,则需要先隐藏您的图像:

var image = $('#image-holder');
image.hide().fadeIn(1000, function () {
    image.css("background", "url('images/design-" + newColor + ".jpg')");
    image.fadeOut(1000); // I suppose you want fadeOut, right ?
});

Demonstration

答案 1 :(得分:0)

首先,您必须使用display:none;而不是opacity:0.

为了能够褪色。

答案 2 :(得分:-1)

也许,承诺完成,

var image = $('#image-holder');
image.fadeIn(1000, function () {
    image.css("background", "url('images/design-" + newColor + ".jpg')").promise().done(function() {
    image.fadeIn(1000);
    });
});