Internet explorer 在IE中设置不透明度动画悬停不起作用
我有一个PNG来帮助阅读悬停菜单,但是淡入淡出在IE上不起作用,它在Chrome和Firefox上效果很好,我也用过PNG-24,PNG-8什么都不起作用Internet explorer 在IE中设置不透明度动画悬停不起作用,internet-explorer,animation,hover,opacity,Internet Explorer,Animation,Hover,Opacity,我有一个PNG来帮助阅读悬停菜单,但是淡入淡出在IE上不起作用,它在Chrome和Firefox上效果很好,我也用过PNG-24,PNG-8什么都不起作用 $(function() { $('#gradient').animate({ "opacity": 0 }); $('#menu').hover(function() { $('#gradient').removeClass('hidden').animate({opacity: '1'
$(function() {
$('#gradient').animate({ "opacity": 0 });
$('#menu').hover(function() {
$('#gradient').removeClass('hidden').animate({opacity: '1'}, 400);
}, function() {
$('#gradient').animate({filter: '0'}, 400);
});
}); </script>
$(函数(){
$('#gradient')。设置动画({“不透明度”:0});
$('#菜单')。悬停(函数(){
$('#gradient').removeClass('hidden').animate({opacity:'1'},400);
},函数(){
$('#gradient')。设置动画({filter:'0'},400);
});
});
IE至少旧版本在结合PNG透明度和CSS透明度方面存在严重问题
我想这在IE9中是固定的,但我不确定
每一个都可以独立工作,但不能在同一个图像对象上工作。IE8和更低版本不支持标准CSS
opacity
属性
它确实支持不透明度的替代方法,使用IE特定的filter
属性,但它比opacity
复杂得多,因为filter
处理一系列效果
但是,既然您使用的是JQuery,为什么不使用内置的.fadeIn()
和.fadeOut()
效果呢?这样,JQuery就可以为您完成所有的工作,包括确定如何更改浏览器中的不透明度
请参见我将代码切换到$(document).ready(function(){$('#menu').hover(function(){$('#gradient').fadeIn('slow');},function(){$('#gradient').fadeOut('fast');});但它仍然不会褪色