如何等待 window.performance.timing 中的所有值都已定义



目前我在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()之前传递

相关内容

  • 没有找到相关文章

最新更新