5

我需要在我编写的附加组件中对整个网页文档进行繁重的 DOM 操作。我想尽量减少回流,这样我所有的操作只会发生一次回流。删除 body 元素,进行操作然后再次插入它不是一种选择,因为这会重新评估所有<script>元素。目前我将 body 的可见性设置为'none'操作之前并在之后恢复 display 的值。不过,我不确定这是否是解决此问题的最佳方法。

有没有更好的办法?当然,它可能是 Firefox 特定的代码。毕竟它是一个 Firefox 附加组件。

4

1 回答 1

1

Gecko 实际上非常擅长自行抑制不必要的修改(即,您最好不要弄乱它),除非在您进行的许多修改之间,您还请求需要布局的信息保持最新(例如元素位置或大小、getComputedStyle 等)

于 2010-07-18T17:23:02.923 回答