Hol*_*lly 9 optimization performance google-chrome
我正试图了解Chrome Dev工具中的Network Tab,了解页面加载的时间以及网络选项卡底部的DomContentLoaded,Load和Finished之间的区别.
从用户的角度来看,页面何时可以阅读,查看,与之交互?是DomContentLoaded,加载还是完成?
从SEO的角度来看,谷歌用来衡量网页速度的事件是什么?
DOMContent已加载
据我所知,DOMContent加载意味着WebPages HTML文档已被浏览器下载和解析,但仍可能需要下载图像,css和javascript等资源,这是正确的吗?
从访问该网页的用户现在准备好了吗?
是否阻止呈现的JavaScript和CSS延迟这个活动?
在上面的Chrome网络标签中,为什么DOMContentLoaded 1.97s位于蓝色文本的底部,但时间线中的蓝线恰好在3秒标记之前?
加载事件
我想这个事件一旦完成下载并完全渲染就会被触发,这个颜色线是什么颜色,红线是2s标记但是在网络选项卡的底部它是红色的网络2.95s! ?
这是一个好点,可以考虑页面已准备好为用户查看.如果你看看amazon.co.uk,直到大约14秒,完成时间一直到3.5分钟,我想是Ajax请求.这让我觉得当Page准备好供用户查看时,这些事件都不会真正代表.

bor*_*Blu 15
DomContentLoaded完全下载和解析初始HTML文档时会触发该事件.
如果您有<script src="test.js"></script>:
1.浏览器下载并解析index.html和test.js
2.浏览器解析和评估脚本
3.浏览器将触发DomContentLoaded
如果你有一个<script src="test.js" async></script>:
1.浏览器下载和解析index.html
2.浏览器将DomContentLoaded
在下载js时触发和平均值
Load在完全加载页面时会触发该事件,因此在下载和解析HTML和BLOCKING资源时.
BLOCKING资源是CSS和Javascript.NOT BLOCKING是异步javascript.
Finished下载HTML + BLOCKING + NON BLOCKING资源时会触发该事件 解析了所有XMLHttpRequest()并Promise完成了.
如果您有一个检查更新的循环,您将继续看到更新此值.
您关心的唯一两个事件是DOMContentLoaded,Load因为浏览器将运行您的js.
DOMContentLoaded == window.onDomReady()
Load == window.onLoad()
那么,作为一个用户,我感觉页面快?秘密是什么?
好吧,要回答这个问题,你必须打开Timeline面板.在捕获线上选择:Network,Screenshot和Paint.(这些不是强制性的,但它们有助于理解).
刷新页面.
您将看到3条垂直线:
这意味着Chrome开始向用户呈现内容.如果您查看屏幕截图,您将能够看到用户何时拥有与之交互的页面的最小版本.
从用户体验的角度来看,用户必须尽快开始看到某些内容(甚至是页面呈现).谷歌有300毫秒(完成800毫秒),亚马逊大概是1.6秒(完成41秒)
对于SEO无后顾之忧.这更容易.使用PageSpeed Insights并按照建议操作.