TD; DR

我花了一些时间来跟踪应用程序的性能,该应用程序实现了图表。我发现,诸如getBBox()之类的某些函数确实经常触发“强制重排”。

如果查看此列表What forces layout / reflow,则触发重排的时间很长。

我的问题:

对于至少某些列出的属性(尤其是offsetWidth/offsetHeight),是否有其他选择可以替代,而不会触发重排?

最佳答案

您熟悉Avoid forced synchronous layouts这样的文档吗?主要思想是在更改元素布局的写操作之前执行所有读操作。只要遵循该原则,使用什么属性就不那么重要了。当然,使用尽可能少工作的属性总是一个好主意。

High-Performance Animations是有关哪些属性有效的好资源。这与德里克提到的分层方法有关。

关于javascript - 最小化 "Forced reflow",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46905823/

10-08 22:52