我想知道使用 CSS Transitions 与任何各种 JavaScript 动画库在性能上有什么区别吗? (script.aculo.us
, scripty2
, jsAnim
, MooTools
, $fx
, etc).
我尝试过各种测试Safari and Chrome但我实际上没有看到任何区别。我认为 CSS 过渡应该是硬件加速的。
Update:
我尝试过使用 Scriptaculous'Effect.Fade
在 5 个不同的 DIV 上(每个 DIV 都包含带有一些线条的画布)。使用 CSS 过渡做完全相同的事情,我发现性能完全没有差异。使用一个 DIV/Canvas 时,两者都非常流畅,但当我一次执行 2 个以上时,两者都非常慢。
我已经尝试过这个Safari 4、5 (OSX), 谷歌浏览器 5 and 火狐浏览器 3.7pre。全面的结果相同。
在回答 UpHelix 的回复时,您不仅限于hover
等。您可以通过更改任何内容来触发转换transitionable
风格。例如,在 JavaScript 中设置元素的不透明度(之后,您指定了transitionPropery
and transitionDuration
对于该元素)。
是的,有区别,CSS 更快。除非你让很多人同时跑步或者他们跑得越多,否则可能很难看到。 CSS 动画虽然有限。在大多数情况下,他们实际上只是在工作:hover
事件。使用 JavaScript,您可以在任何事件中执行动画:click
, mouseover
, mousemove
, mouseout
, keyup
, keydown
, etc.
在我看来,jQuery 是 2010 年 JavaScript 动画中最好的。参见jQuery 演示 http://jqueryui.com/demos/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)