Firefox 有没有一种方法可以在大量DOM操作期间暂停回流?

Firefox 有没有一种方法可以在大量DOM操作期间暂停回流?,firefox,dom,reflow,Firefox,Dom,Reflow,我需要在我编写的附加组件中对整个网页文档进行大量DOM操作。我想尽量减少回流,这样我的所有操作只会发生一次回流。移除主体元素、执行操作然后再次插入不是一个选项,因为这会重新评估所有元素。目前,我在操作之前将主体的可见性设置为'none',并在操作之后恢复显示值。不过,我不确定这是不是最好的解决办法 有更好的办法吗?当然,它可能是特定于Firefox的代码。毕竟它是一个Firefox附加组件。Gecko实际上很擅长自己抑制不必要的修改(也就是说,你最好不要弄乱它),除非在你做的许多修改之间,你还请

我需要在我编写的附加组件中对整个网页文档进行大量DOM操作。我想尽量减少回流,这样我的所有操作只会发生一次回流。移除主体元素、执行操作然后再次插入不是一个选项,因为这会重新评估所有
元素。目前,我在操作之前将主体的可见性设置为
'none'
,并在操作之后恢复显示值。不过,我不确定这是不是最好的解决办法


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

Gecko实际上很擅长自己抑制不必要的修改(也就是说,你最好不要弄乱它),除非在你做的许多修改之间,你还请求需要布局最新的信息(如元素位置或大小、getComputedStyle等)

您只是在添加内容,还是在做一系列修改?我用一系列元素替换所有不只是空白的文本节点:
foobar baz
->
foobar baz
我这样做是为了能够得到每个单词的准确位置(在我操纵所有元素之后)。