-
一只萌萌小番薯
如果我找到你,你想知道什么时候选项卡/窗口有效关闭。好了,据我所知的唯一途径Javascript,以检测之类的东西都onunload与onbeforeunload事件。不幸的是(或者幸运的是?),当您将网站留link在浏览器或浏览器后退按钮时,这些事件也会被触发。所以这是我能给出的最佳答案,我认为你不能close在Javascript 中原生地检测到纯粹的答案。如果我在这里错了,请纠正我。
-
ITMISS
来自Firefox文档出于某些原因,基于Webkit的浏览器不遵循对话框的规范。一个几乎交叉的例子将接近下面的例子。window.addEventListener("beforeunload", function (e) {
var confirmationMessage = "\o/";
(e || window.event).returnValue = confirmationMessage; //Gecko + IE
return confirmationMessage; //Webkit, Safari, Chrome});此示例用于处理所有浏览器。
-
繁华开满天机
简单解决方案window.onbeforeunload = function () {
return "Do you really want to close?";};
-
弑天下
<body onbeforeunload="ConfirmClose()" onunload="HandleOnClose()">var myclose = false;
function ConfirmClose()
{
if (event.clientY < 0)
{
event.returnValue = 'You have closed the browser. Do you want to logout from your application?';
setTimeout('myclose=false',10);
myclose=true;
}
}
function HandleOnClose()
{
if (myclose==true)
{
//the url of your logout page which invalidate session on logout
location.replace('/contextpath/j_spring_security_logout') ;
}
}//如果您只使用一个选项卡关闭选项卡或浏览器,则可以在IE7中使用