【问题标题】:onbeforeunload onunload performance.navigation.type not working properlyonbeforeunload onunload performance.navigation.type 无法正常工作
【发布时间】:2017-08-30 10:18:00
【问题描述】:

我有 reactjs 应用程序,我正在尝试在浏览器关闭时显示警报。但是出现了一些不一致的行为。有时它不会在浏览器刷新时触发警报,但有时会显示警报。以下是我的代码:-

window.onbeforeunload = () => {
    let msg =undefined;
     if (window.performance && performance && performance.navigation.type == 1){

     }
     else{
         msg ='Are you sure?';
     }
    return msg;
};
 window.onunload = () => {
        if (localStorage.getItem('state')) {
            localStorage.removeItem('state');
        }
    }

现在有时它会在浏览器关闭按钮单击时显示警报,但有时它会在没有任何警告的情况下关闭浏览器,还会出现一些刷新警报的时间,这在我的场景中是不期望的。我只想在关闭浏览器。请帮助我如何处理这种情况。StackOverflow 中也存在许多类似这样的重复问题,但所有答案都是旧的,它们没有使用现代浏览器概念。

【问题讨论】:

    标签: javascript reactjs window onbeforeunload window.onunload


    【解决方案1】:

    您无法在window.onbeforeunloadwindow.onunload 事件中检测用户是否要重新加载或更改页面。

    PerformanceNavigation API 仅告诉您用户如何进入当前页面,而不是告诉您他们将如何在 window.onbeforeunloadwindow.onunload 事件中导航到下一页。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-16
      • 1970-01-01
      相关资源
      最近更新 更多