在我的一页Web应用程序的各个位置,我想进行一些相当繁重的DOM操作,移动各个div(每个div都有很多子元素)。我不希望浏览器试图在操作中反复重画页面。有没有办法对浏览器说“暂停重绘,直到我继续进行”?

requestAnimationFrame()似乎是一个候选对象,但它适合DOM重排,还是仅适合动画?我还能做其他事情吗?

谢谢

最佳答案

您可以尝试使用documentFragment。


创建documentFragment。
首先将所有内容写入documentFragment。
完成后,用documentFragment替换DOM内容。


这样就不会立即进行操作,而是将documentFragment用作一种缓冲区。

10-06 08:12