2014-04-01 66 views
3

我前段时间看过一段话,说CSS动画比JS动画快。使用jQuery来做一些动画,我可以看到为什么有些人会这样说,因为jQuery动画有时会出问题和缓慢。然而,我想知道的是,论证中是否有任何硬核的真相?CSS动画比JS动画更快吗?

回答

8

有一个常见的误解,即CSS动画比JS动画更快,因为每当提出主题时都会使用所有highfalutin buzz-words。然而,CSS动画是很多比jQuery动画更快,更稳定,这是很多人从中获得这个想法的地方。如果你看看GreenSock library for JS(这个名字应该和旧的Flash WebDevs:v一起敲响铃声),它比jQuery快得多,并且比CSS动画的匹配更多。

如果您看一下at this website并向下滚动到“性能比较”部分,您将进行压力测试,这确实是我刚才所说的所有内容的基础。我在一台拥有英特尔酷睿i7 3930K 3.2GHz处理器和8GB内存(无法分辨GPU)的机器上运行测试。

运行测试时,确保将点设置为3000并在所有三个引擎上运行测试。

  • jQuery的引擎只能使一个点
  • 的使用GreenSock引擎是迄今为止最流畅
  • 的CSS引擎是好的,但似乎没有什么作为流体的GSAP引擎

显然,应该有人不同意测试和给定的信息,请参考和数据说明,为什么你不同意

+2

由于css-tricks.com文章指出,说一个人总是比另一个人快 - 这是与情境有关的,可能并不准确。但是在许多情况下,JavaScript肯定会更快(根据我的经验,更多的情况),而有时CSS可以更快取决于设备以及JS如何编写。正如GSAP证明的那样,CSS将胜过写得不好的JS,但高效的JS通常会打破CSS的大门。很明显,JavaScript更加灵活,你可以更好地控制和兼容。当然,我是GSAP的一个巨大的(也是完全偏颇的)粉丝。我的建议是:测试,测试,测试。 – Jack