Javascript动画:IE与其他浏览器

Javascript动画:IE与其他浏览器,javascript,google-chrome,internet-explorer-8,safari,Javascript,Google Chrome,Internet Explorer 8,Safari,在我开始讨论我所面临的具体问题之前,我只需要问一下:使用IE8作为构建网站的参考,尤其是使用JavaScript动画的网站,这是错误的吗?我问这个问题是因为我写了一个相当简单的动画页面,大部分都是从零开始的,即使我对HTML和JavaScript语言的掌握很差,也使用IE8来监控进度。我对代码进行了调整,使其在IE8中工作正常(兼容性模式已关闭),但当我在Safari和Chrome中尝试时,它在动画中出现了一些奇怪的打嗝现象 我发现有很多问题与之相反:它在除IE之外的所有应用中都很好。所以我想知

在我开始讨论我所面临的具体问题之前,我只需要问一下:使用IE8作为构建网站的参考,尤其是使用JavaScript动画的网站,这是错误的吗?我问这个问题是因为我写了一个相当简单的动画页面,大部分都是从零开始的,即使我对HTML和JavaScript语言的掌握很差,也使用IE8来监控进度。我对代码进行了调整,使其在IE8中工作正常(兼容性模式已关闭),但当我在Safari和Chrome中尝试时,它在动画中出现了一些奇怪的打嗝现象

我发现有很多问题与之相反:它在除IE之外的所有应用中都很好。所以我想知道,我应该使用不同的浏览器作为参考吗?还是有更好的方法使其与所有浏览器兼容?要处理不同浏览器的不同解释是非常令人沮丧的(我相信你们大多数人都会同意)

谢谢你的帮助


p、 我还没有为Mozilla编写代码。

如果你正在制作动画,我鼓励你利用css转换,而不是通过javascript控制元素-你将有机会利用图形硬件以及更高效的像素绘制

如果您仍然需要在不支持css转换的浏览器中执行动画(ie9中有一些,ie6-8中没有),那么您可以使用Modernizer之类的工具来检测可用的内容,并在这些功能不可用时控制这些元素

通常情况下,动画是额外的——因此我成功地抛弃了IE用户的动画——如果你只是为了IE用户而制作缓慢的、javascript驱动的动画,那么你就是在惩罚那些使用更好浏览器的用户


当然,就我的$0.02而言,从性能角度来看,使用ie8作为参考并不是一个坏主意,因为它的js和渲染性能很差。使用ie7甚至更好

就跨浏览器兼容性而言,使用什么并不重要——除非使用jQuery这样的跨浏览器库作为动画的基础,否则必须为各种js和渲染引擎编写特定代码

即使使用jQuery这样的库,也会遇到渲染问题,因为不同浏览器的各种html/渲染引擎不同。chrome/safari使用webkit,firefox使用gecko等


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

谁是您的目标受众(即,哪些浏览器必须运行良好?)你是如何实现动画的?OP显然需要至少支持IE8和IE9,并且在任何版本的IE中都没有CSS转换,所以我不知道你为什么推荐CSS转换作为解决方案。我已经成功地在IE版本(如IE6)中实现了基于javascript的动画,因此通过正确的实现,许多动画没有理由不能在IE中工作。重要的是使用tweening并动态适应主机浏览器中的渲染速度,以保持一致的动画速度(在速度更快的浏览器上生成更多帧,在速度较慢的浏览器上生成更少帧).作为一个使用css3转换为IE10构建技术演示的人,如果IE具有各种兼容性,我可以保证版本。.哦,还有这个:-另外,ie7/8中有一些过滤器垃圾,对转换和缩放很有用。我明白你的意思,应用程序很重要-这就是为什么我建议在速度越快的情况下使用JS回退moother css转换是适用的。好吧,我会修改我的评论,说没有发布的IE的
版本支持css转换。我不希望IE过滤器出现在任何人身上。我已经用它们编写了很多幻灯片转换,它们是非常痛苦的,除了琐碎的使用(比如不要尝试将不透明度渐变与字体混合)。如果你查看我发布的web资源,IE9(发布版本)支持css转换,但不支持3d转换。如果你读了我写的内容,我说的是
css转换
,这通常是动画所需要的。你能给我看一下任何IE9代码,它可以用渐变、擦除等转换进行很好的幻灯片放映…只使用CSS3吗?这里是你自己的转换参考:。