首页 > 解决方案 > 确定页面何时刷新或重新加载

问题描述

我已经阅读了几个关于刷新和/或重新加载页面以及如何确定的 StackOverflow 答案。

检查页面是否在 JavaScript 中重新加载或刷新

检查页面是否在 JavaScript 中重新加载或刷新

尤其是。这两个问题的答案似乎都回答了这个问题,即如何确定页面何时刷新或重新加载。
问题是引用的 PerformanceNavigation API 似乎已被弃用,新的​​ PerformanceNavigationTiming API 看起来还没有准备好用于生产。

我尝试过使用旧界面和新界面。OLD PerformanceNavigation 适用于 Chrome、Firefox 和 Edge。

新的 PerformanceNavigationTiming 似乎不适用于任何这些浏览器。

这是我引用的 1 个问题中使用的代码。

if (window.PerformanceNavigation) {
    console.info("window.performance works fine on this browser");
}

if (window.PerformanceNavigationTiming) {
    console.info("window.performance works fine on this browser");
}

if (window.performance.navigation.type == "reload" ||      window.performance.navigation.type == 1) {
   console.info( "This page is reloaded" );
} else {
   console.info( "This page is not reloaded");
// console.info( "Value of Type is: " + window.PerformanceNavigationTiming.type()); 
}
if (window.PerformanceNavigationTiming.type == "reload" || window.PerformanceNavigationTiming.type == 1) {
    console.info( "This page is reloaded" );
} else {
    console.info( "This page is not reloaded");
// console.info( "Value of Type is: " + window.PerformanceNavigationTiming.type()); 
}

出于明显的原因,我真的不想使用已弃用的 API。但我认为没有办法解决这个问题。希望有一个非常简单的方法来处理这个问题。
所以,我的问题是:

  1. 当旧接口被弃用时,新接口不应该工作吗?
  2. 如果它确实有效,我在尝试使用新界面时做错了什么。我承认这可能是我缺乏经验。

  3. 感谢您提供的任何简单示例。

标签: javascriptpage-refresh

解决方案


推荐阅读