Javascript动画:IE与其他浏览器

时间:2011-12-08 22:56:44

标签: javascript google-chrome internet-explorer-8 safari

在我开始讨论我面临的问题之前,我只需要问:使用IE8作为构建网站的参考是否有误,尤其是使用JavaScript动画的网站?我问,因为我写了一个相当简单的动画页面,主要是从头开始,即使我对HTML和JavaScript语言的掌握很少,使用IE8来监控进度。我已经调整了代码,以便它在IE8中工作得很好(兼容模式关闭),但是当我在Safari和Chrome中尝试它时,它在动画中做了一些奇怪的打嗝。

我发现很多问题都存在相反的问题:除了IE之外,它在除了IE之外的一切都很好。所以我想知道,我应该使用不同的浏览器供我参考吗?或者是否有更好的方法使其与所有浏览器兼容?令人沮丧的是(我相信大多数人会同意)必须处理不同浏览器的不同解释。

感谢您的帮助!

P.S。我还没有为Mozilla编码。

2 个答案:

答案 0 :(得分:0)

如果您正在制作动画,我建议您利用css过渡而不是通过javascript控制元素 - 您将有机会利用图形硬件以及更有效的像素绘制。

如果您仍然需要在不支持这些css过渡的浏览器中执行动画(有些在ie9中,有些在ie6-8中),那么您可以使用像modernizr这样的工具来检测可用的内容并在事件中控制这些元素这些功能不可用。

通常情况下,动画是额外的 - 所以我在放弃IE用户的动画方面取得了很好的成功 - 如果你正在制作缓慢的,javascript驱动的动画只是为IE用户工作,那么你正在惩罚正在使用的用户更好的浏览器

当然只需0.02美元

答案 1 :(得分:0)

从性能的角度来看,使用ie8作为参考并不是一个坏主意,因为它具有弱的js和渲染性能。使用ie7甚至更好。

跨浏览器兼容性明智,使用什么并不重要 - 除非您使用像jQuery这样的交叉浏览器库作为动画的基础,否则您必须为各种js和渲染引擎编写特定代码。

即使你使用像jQuery这样的库,你仍然会遇到渲染问题,因为不同的html / render引擎在浏览器中是不同的。 chrome / safari使用webkit,firefox使用gecko等。

正确行事的唯一方法是通过定义您希望支持的浏览器来开始您的项目,然后在开发代码时测试您在所有浏览器中执行的操作。