目前我在window.addEventListener('load', function () {...})
函数中读取window.performance.timing
中的值。 但是在 Safari 中,仍有loadEventEnd
这样的值设置为 0
.
如何延迟我以最佳方式window.performance.timing
基于事件的调用,直到定义此值和其他值?
在加载事件中执行额外的延迟。
window.addEventListener('load', check)
function check() {
if (performance.getEntriesByType("navigation")[0].loadEventEnd && other_values()) {
callToPerformanceTiming()
}
else setTimeout(check, 0); //put it back in queue
}
只要loadEventEnd
0
就会重复检查。
你也可以检查other_values()
非常舒尔
它会在您执行callToPerformanceTiming()
之前传递