【发布时间】:2019-02-21 09:11:28
【问题描述】:
我需要在浏览器窗口关闭时调用logout function。它在 Chrome 中运行良好,但在 IE 和 Safari 中无法运行。
我尝试了以下代码:
window.onbeforeunload = function (e) {
// Your logic to prepare for 'Stay on this Page' goes here
var evtobj = window.event ? event : e;
if (evtobj == e) {
//firefox
if (!evtobj.clientY) {
//server call
}
}
else {
//IE
if (evtobj.clientY < 0) {
//server call
}
}
//return "Please click 'Stay on this Page' and we will give you candy";
};
我尝试了其他几种方法,但都没有奏效。请指教。
【问题讨论】:
-
嗨,你能检查一下这个链接,它可能会有所帮助stackoverflow.com/a/54801161/7924858请投票
-
谢谢@abhinavxeon,已经试过了,不行。
-
有很多方法可以关闭浏览器窗口,因此不幸的是(有点,幸运的是)不可能纯粹检测窗口正在关闭。 JavaScript 有 onundload 和 onbeforeunload 事件,但它们不能跨越安全限制为它们设置的边界。
标签: javascript jquery browser-close