使用jQuery在Firefox和Internet Explorer中模糊文本呈现

不确定是什么原因造成的?

如果我在Firefox中使用slideDown,则文本渲染会在动画完成之前切断字母的顶部。 这在IE浏览器中没问题。

如果我然后改变动画使用fadeIn,那么模糊不会发生在Firefox中,但文字在IE中非常锯齿。

从我过去在动画方面提出的另一个问题来看,这个家伙告诉我,我应该将我想要的动画包装在另一个DIV中,然后再动画。 这样可以解决由.animateDiv内容填充引起的急动。

在jQuery中是否有文本呈现技巧

您需要使用此处或此处的技术。 基本上IE中的任何淡入都必须通过CSSfilter完成,这实际上是一个特定于IE的东西,真的是FUBAR的CelarType ……所以当你完成淡入或淡出时,你需要删除它留下的filter

现在对于部分褪色的文本,这没有用,但是如果你一直淡入或淡出,这将清除结果…在淡入过程中你仍然会有锯齿状文本,这就是IE的行为方式不幸的是(IE9解决了这个问题,但是IE7 / 8并没有长时间使用)。

如果您在第一个链接中使用该技术 ,只需在任何地方使用它们之前包含这些函数(只需一次),如下所示:

 $.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); 

我认为IE在ClearType和动画方面存在问题 。 FF不确定。