2010-11-22 39 views
2

好了,这是一个众所周知的缺陷与IE和jQuery:jQuery的淡入/淡出IE的ClearType故障如何解决过渡

IE is losing ClearType

什么我问:是否有可能以某种方式去除难看的过渡效果,在应用“修复”之前。在IE浏览器测试:

http://www.kevinleary.net/wp-samples/ie-fade-problems.php

虽然这是一个糟糕的问题的解决方案,是可以修复的过渡段和“非透明型”内容闪光?

它不会麻烦我那么多,但它是在jQuery中我的主要网站菜单(快鱼) - 这些转变是非常明显的...

编辑:一两件事要注意 - 这是否也发生在您的浏览器?也许这是在IE设置中的东西?

+0

我在IE9测试版中试过了,它只是淡入,突然消失。 – Gidon 2010-11-23 10:10:49

回答

2

有没有办法解决难看的cleartype ,而淡出发生关于该内容。这只是IE团队如何实现其不透明过滤器(Direct X,它在IE中实现的方式不支持ClearType)的一个(IMO)错误决定。

是顶部有淡入,而不是您的内容与文字淡出效果很好是褪色的东西别的,像<div>唯一的其他选择......但你说你的用途是用于一个菜单,所以这不适用于此。

0

好的解决方案尼克!

各种脚本都实施了修补程序(如cycle),但目前我发现的用于修复动画过程中的像素化文本的最佳选项正是nick的建议:覆盖DIV而不是淡化文本本身。

对不起,我不能帮助蓝宝石,但感谢您的阅读!

2

我读了各种可能的解决方案,为Internet Explorer淡入淡出问题,但似乎没有任何工作。

最终,我决定采用绝对定位的DIV覆盖,如本主题中所述。然而,我有一个动态高度,所以我使用jQuery在淡入淡出前改变DIV的高度。我的代码最终看起来像这样:

$("#fade-canvas").css('height',$("#wrapper").height()+'px').show(); 
    /* HIDE or SHOW wrapper child elements as needed */ 
$("#fade-canvas").css('height',$("#wrapper").height()+'px').fadeOut(600); 

拉我的头发了这个问题,所以希望这可以帮助别人了。