0

假设我在一个页面上有 10 个元素。

目前我正在循环中迭代它们,改变宽度和位置:

el[i].style.width = ....
el[i].style.left = ....

我想知道如果我告诉浏览器在循环完成后只重新渲染所有元素一次,动画是否可以运行得更快

4

3 回答 3

1

使用 CSS3 更快,您将不得不编写更少的代码,看看这个Jsbin,我只做了两个示例,一个使用过渡(.anima2),另一个使用动画(.anima)。使用 JS,您只需要应用和删除类。

于 2013-02-04T19:27:29.213 回答
1

如果您将更改应用到共享类或加载包含所有更改的样式表,这将使所有更改同时应用,但不确定性能影响......

于 2013-02-04T19:08:47.597 回答
0

由我调查(不完全跨浏览器,行为不同和变化,这需要大量的测试 abd 基准测试):

一个)requestAnimationFrame

b) CSStranslate3d和其他新的 CSS3 代替leftGPU 优化

稍后回来,我会告诉结果

于 2013-04-05T08:38:23.640 回答