jQuery不透明动画

时间:2010-08-02 17:49:09

标签: javascript jquery jquery-animate opacity

我正在创建一个网站,它允许用户更改视图选项。我使用jQuery来平滑动画以更改字体。它将整个页面淡出并重新使用新字体。

淡出动画很好,但当它淡入时,就没有褪色。它只是弹出,没有动画。

有问题的jQuery位于http://xsznix.my3gb.com/options.php

到目前为止我的代码是:

$('#font-classic').click(function(){
    $(document.body).animate({opacity: '0%'},{duration: 1000, complete: function(){
        // font changing code here
        $(document.body).animate({opacity: '100%'}, 1000);
    }});
});

3 个答案:

答案 0 :(得分:52)

jQuery的.animate()取值从01

$(document.body).animate({opacity: 0}, 1000);
$(document.body).animate({opacity: 1}, 1000);

我确信.animate()必须对您传递的值调用.parseFloat()(或其他内容),这会使0%成为0(这是100%正确),但你的100进入{{1}},这是不正确的。

答案 1 :(得分:8)

为什么不使用jQuery的内置函数fadeInfadeOut

$('#font-classic').click(function(){
    $('body').fadeOut('normal', function(){
        $('body').fadeIn();
    }});
});

答案 2 :(得分:7)

您可以使用以下功能:

$(document.body).animate({ opacity: 1/2 }, 1000);