jquery的animate方法对display的切换不支持,单纯使用opacity的切换并不能真正实现隐藏和显示的效果(如果要实现的元素上面有事件则有几率被触发)。所以下面是demo:
1 $('.logo').css({display:'block'}); 2 $('.logo').animate({opacity:1},2000,function(){ 3 $('.logo').animate({opacity:0},2000,function(){ 4 $('.logo').css({display:'none'}); 5 }) 6 });
在css中将元素设置为:display:none;opacity:0;脚本执行时先将元素display切换为block,同时执行动画使其逐渐显示。动画控制其消失的时候,在animate方法的回调函数中将元素的display切换回none即可。