我正在寻找适用于所有浏览器和操作系统的东西
将此作为参考https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload
到目前为止我有什么
window.addEventListener("beforeunload", function (e) {
var confirmationMessage = null;
// do some ajax stuff // just setting a SESSION variable
e.returnValue = confirmationMessage;
return confirmationMessage;
});
很难排除故障,因为有时事件会发生,有时甚至不会发生。好像我必须在重新触发之前暂停一下。 触发我感兴趣的事件的方法是刷新和后退按钮。
Safari似乎有效,但不适用于Chrome或Firefox
感谢您的想法。
答案 0 :(得分:0)
作为替代方案,您可以在localStorage
中存储需要与会话同步的数据,并在用户返回页面时检查是否有任何数据要与服务器同步。您需要在同步后清除localStorage
中的数据。
优点:
缺点: