您需要使用技术like here或here。基本上IE中的任何淡入淡出都必须通过一个CSS过滤器完成,这实际上是一个IE特定的事情,真的是FUBAR CelarType ......所以当你完成淡入淡出时,你需要删除它留下的那个filter
。
现在对于部分褪色的文本,这将无济于事,但如果您将一路放入或放出,则会清除结果...在褪色期间,您仍然会看到锯齿状的文本,这只是IE的行为不幸的事情(IE9修复了这一点,但IE7/8很长一段时间没有去任何地方)。
如果使用the technique in the first link,只包括使用他们的任何地方,如在此之前的功能(只需一次):
$.fn.customFadeIn = function(speed, callback) {
$(this).fadeIn(speed, function() {
if(!$.support.opacity)
$(this).get(0).style.removeAttribute('filter');
if(callback != undefined)
callback();
});
};
代替.fadeIn()
然后,你叫.customFadeIn()
代替,就像这样:
$("#uglyThingInIE").customFadeIn(500);
再次感谢Nick!这很好用! – 2010-05-31 08:17:20