Internet Explorer中的JavaScript不透明度抗锯齿错误

Internet Explorer中的JavaScript不透明度抗锯齿错误,javascript,jquery,internet-explorer,animation,opacity,Javascript,Jquery,Internet Explorer,Animation,Opacity,在我制作的javascript动画中,我遇到了一个令人讨厌的internet explorer错误。 我有一个城市天际线的灰度图像,它将不透明度衰减为0,显示出全彩天际线 它在所有其他浏览器中看起来都很棒,但IE显示了工件。一位朋友告诉我,这是因为IE中使用javascript设置不透明动画时出现了一些奇怪的错误。这与抗锯齿和假定的黑色背景有关吗?我真的不知道。alpha过滤器(被jQuery用作IE上不支持CSSopacity的后备)不能与具有alpha通道的图像共存,比如PNG上的可变透明度

在我制作的javascript动画中,我遇到了一个令人讨厌的internet explorer错误。 我有一个城市天际线的灰度图像,它将不透明度衰减为0,显示出全彩天际线


它在所有其他浏览器中看起来都很棒,但IE显示了工件。一位朋友告诉我,这是因为IE中使用javascript设置不透明动画时出现了一些奇怪的错误。这与抗锯齿和假定的黑色背景有关吗?我真的不知道。

alpha过滤器(被jQuery用作IE上不支持CSS
opacity
的后备)不能与具有alpha通道的图像共存,比如PNG上的可变透明度。它强制形状边缘的部分透明黑色像素完全不透明,从而导致瑕疵


将alpha过滤器放置在包含半透明图像的
上,可以获得更好的结果。(如果您需要IE6支持,您还需要对图像本身进行PNG修复。)这仍然不太正确,因为每个像素的不透明度被视为图像不透明度和过滤器不透明度的最小值,而不是二者的乘积。但它通常看起来还可以,并且不会带来您现在遇到的过于不透明的问题。

最简单的修复方法-将图像更改为GIF。由于您的城市图像没有任何渐变,png格式的alpha通道支持的优势并不是您真正需要的。这应该可以追溯到ie6。

我们讨论的是什么版本的IE?我已经检查了IE7和IE8。我想它是在6日坏掉的,并且没有费心去检查9。这就是我为解决这个问题所做的。工作起来像个魔咒谢谢你。这是一个伟大的描述到底是什么问题。然而,我对拟议的解决办法感到困惑;既然布里安的解决方案很简单,我就试了一下,效果很好!