84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
有没有跨浏览器的JavaScript/jQuery代码可以检测浏览器或浏览器标签页是否关闭,但不是由于点击链接引起的?
根据MDN文档:由于某些原因,基于Webkit的浏览器不遵循规范中的对话框。下面的示例中有一个几乎可以跨浏览器工作的关闭示例。
window.addEventListener("beforeunload", function (e) { var confirmationMessage = "\o/"; (e || window.event).returnValue = confirmationMessage; //Gecko + IE return confirmationMessage; //Webkit, Safari, Chrome });
这个例子适用于处理所有浏览器。
如果我理解正确,您想知道何时有效关闭一个标签/窗口。嗯,据我所知,在JavaScript中唯一检测到这一点的方法是使用onunload或onbeforeunload事件。
不幸的是(或幸运的是?),当您通过链接离开一个网站或使用浏览器的返回按钮时,这些事件也会触发。所以这是我能给出的最好答案,我认为您无法在JavaScript中原生地检测到一个纯粹的关闭。如果我理解错误,请纠正我。
根据MDN文档:
由于某些原因,基于Webkit的浏览器不遵循规范中的对话框。下面的示例中有一个几乎可以跨浏览器工作的关闭示例。
这个例子适用于处理所有浏览器。
如果我理解正确,您想知道何时有效关闭一个标签/窗口。嗯,据我所知,在JavaScript中唯一检测到这一点的方法是使用onunload或onbeforeunload事件。
不幸的是(或幸运的是?),当您通过链接离开一个网站或使用浏览器的返回按钮时,这些事件也会触发。所以这是我能给出的最好答案,我认为您无法在JavaScript中原生地检测到一个纯粹的关闭。如果我理解错误,请纠正我。