我正在创建一个网站,它允许用户更改视图选项。我使用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);
}});
});
答案 0 :(得分:52)
jQuery的.animate()
取值从0
到1
。
$(document.body).animate({opacity: 0}, 1000);
$(document.body).animate({opacity: 1}, 1000);
我确信.animate()
必须对您传递的值调用.parseFloat()
(或其他内容),这会使0%
成为0
(这是100%
正确),但你的100
进入{{1}},这是不正确的。
答案 1 :(得分:8)
为什么不使用jQuery
的内置函数fadeIn
和fadeOut
?
$('#font-classic').click(function(){
$('body').fadeOut('normal', function(){
$('body').fadeIn();
}});
});
答案 2 :(得分:7)
您可以使用以下功能:
$(document.body).animate({ opacity: 1/2 }, 1000);