“第一次绘画的时间”vs“第一次有意义的绘画”

问题描述:

是否有SO的Web性能部分?“第一次绘画的时间”vs“第一次有意义的绘画”

假设没有(我还没有找到一个),那么有什么区别,如果有的话,time to first painthttps://developers.google.com/web/tools/chrome-devtools/evaluate-performance/timeline-tool)和First Meaningful Painthttps://developers.google.com/web/tools/lighthouse/audits/first-meaningful-paint)之间?

有几个有趣的漆时间。第一个是

  • 第一涂料:当第一像素被涂到屏幕上的时间。例如页面的背景颜色。
  • 第一个有内容的绘图: DOM上的第一个内容片段被绘制的时间,即一些文本或图像。
  • 第一个有意义的画图:浏览器绘制usera感兴趣的内容的时间,这很大程度上取决于页面。

前两个实际上可以通过Chromes计时API进行跟踪,并在Google Analytics中进行报告。

目前无法从浏览器API中测量第一个有意义的绘图(FMP)。测量FMP时的一般想法是定义英雄元素,即组成主要用户内容的元素,并测量其绘制时间。目前没有办法获得DOM中特定元素的绘制时间。如Lighthouse或WebPageTest这样的工具通过在渲染为主要候选时进行最大布局更改来估计FMP。

+0

@snowcrash你也可以在https://developers.google.com/web/updates/2017/06/user-centric-performance-metrics#first_paint_and_first_contentful_paint上阅读更多关于它的内容,如果你想测量FCP甚至TTI你可以使用Perfume.js https://github.com/Zizzamia/perfume.js – zizzamia