Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance 为什么设置文本内容会触发回流?_Performance_Browser_Requestanimationframe_Reflow - Fatal编程技术网

Performance 为什么设置文本内容会触发回流?

Performance 为什么设置文本内容会触发回流?,performance,browser,requestanimationframe,reflow,Performance,Browser,Requestanimationframe,Reflow,我有一个简单的倒计时实用程序,它利用requestAnimationFrame设置特定DOM的textContent。令人惊讶的是,每次我更新内容时,浏览器都会触发回流。有没有办法避免这种情况 在中的requestAnimationFrame上有一个简单的演示,使用Chrome开发工具的性能工具,您可以看到每个回调调用后面都有回流(布局) 据我所知,设置textContent不应导致样式重新计算。我也尝试过给元素提供固定尺寸,但这没有帮助。,它不会同步触发回流,但当下一次绘制发生时,浏览器仍必须

我有一个简单的倒计时实用程序,它利用
requestAnimationFrame
设置特定DOM的
textContent
。令人惊讶的是,每次我更新内容时,浏览器都会触发回流。有没有办法避免这种情况

在中的
requestAnimationFrame
上有一个简单的演示,使用Chrome开发工具的性能工具,您可以看到每个回调调用后面都有回流(布局)

据我所知,设置textContent不应导致样式重新计算。我也尝试过给元素提供固定尺寸,但这没有帮助。

,它不会同步触发回流,但当下一次绘制发生时,浏览器仍必须重新计算布局,因为
文本内容的更改可能会改变页面的布局


我所能想到的避免回流的唯一方法是将此文本呈现为一种颜色。

谢谢,我不知道并非所有回流都是性能提升所必需的。使用canvas时,确实没有触发回流,但是完成动画帧事件所需的时间并没有真正减少。所以我认为在我的用例中,让回流发生是安全的。