Internet Explorer上的透明PNG动画问题

gok*_*sel 5 jquery internet-explorer opacity jquery-animate

CSS代码:

#btn{
  background: url(transparent.png) no-repeat;
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -khtml-opacity: 0;
  opacity: 0;
}
Run Code Online (Sandbox Code Playgroud)

的JavaScript/jQuery的:

$("#btn").animate({opacity:1,"margin-left":"-25px"});
Run Code Online (Sandbox Code Playgroud)

我对Firefox,Chrome等上面的代码没有任何问题.但它不适用于任何版本的Internet Explorer.

问题是PNG图像呈现奇怪,透明PNG的背景看起来很黑.当我删除不透明效果时,没有问题.

解决办法是什么?

Bjö*_*ser 11

对我来说,它只是在jQuery的.animate()函数中包含带有空值的filter属性

也许这对你也有用.

$("#btn").animate({opacity:1,"margin-left":"-25px", filter:''});

此外,您可能必须从按钮的CSS中删除filter属性.


nic*_*are 7

filter:'' hack不再适用于当前的jQuery(1.6.1)


Sam*_*son 5

目前我还没有解决这方面的问题.只需要等待IE赶上世界其他地方.几天前我不得不在最近的一个项目中放弃这样的功能.遗憾的是,你无法使用带有IE淡入淡出和淡出jQuery的边缘PNG.