domLoading时间表示浏览器处理文档的最开始时间。
但是 domLoading 属性已从 Timing API 中删除:performance.getEntriesByType("navigation")[0].domLoading == undefined
我从 2015 年 9 月 17 日找到了一个动机:
该domLoading
属性已弃用,可能会在本规范的未来版本中删除。由于现有用户代理中创建 Document 对象的时间不同,domLoading 返回的值是特定于实现的,不应在有意义的 metrics 中使用。
MDN都没有告诉使用什么来代替。我觉得很奇怪,我没有发现任何关于这个的问题。responseEnd 和 domInteractive 是我能看到的时间上最近的属性,但它们相差太大。
如果没有在处理文档时使用此属性,我无法知道文档交互、加载或完成内容需要多长时间。
是否有任何正确的参考来衡量和比较,我错过了或可以改用?
var nt = performance.getEntriesByType("navigation")[0],
/* domLoading = nt.domLoading; <<< Error: undefined */
domLoading = nt.responseEnd; //Not correct? Hopefully same.
console.log("Dom parsed in " + (nt.domInteractive - domLoading) + " ms")
console.log("Dom ready in " + (nt.domContentLoadedEventStart - domLoading) + " ms")
console.log("Dom complete in " + (nt.domComplete - domLoading) + " ms")
我在 w3c.github.io 上发现了这个新的时间线,表明没有 dom 的开始可以测量。