在浏览器关闭时显示警报但在注销关闭时不显示警报

时间:2012-11-23 04:45:02

标签: javascript jquery

在我的应用程序中,当用户注销时,浏览器将关闭。在浏览器关闭时,我正在发出警报。现在我想要的是,如果我直接关闭浏览器窗口警报应该来,但如果窗口是通过注销警报关闭不应该来,因为我已经显示另一个确认消息注销。

function closeEditorWarning(){
    for (var i=0;i<childWindow.length;i++) {
        if (childWindow[i] && !childWindow[i].closed) childWindow[i].close();
        if(i==0) {
            alert("This will close all open e-App applications");
        }
    }
    window.close();  
}
window.onbeforeunload = closeEditorWarning;

这是我的退出代码

    $('#'+id).click(function(event){
        event.preventDefault();
        $('#centerContent').load('<%=request.getContextPath()%>/'+target);
    });
} else {
    $('#'+id).click(function(event){
        event.preventDefault();
        var r=confirm("logout");
        if (r==true)
        {
            flag=true;
            for (var i=0;i<childWindow.length;i++) {
                if (childWindow[i] && !childWindow[i].closed) childWindow[i].close();
            }
            window.close();
        } else { }
    });
}

2 个答案:

答案 0 :(得分:0)

使用旗帜。单击日志关闭时设置标志。

在显示警告之前检查标志

答案 1 :(得分:0)

使用用户登录状态设置隐藏字段并仔细检查:

if($('#isUserLogIn').text()=='true')
{
  //show alert
}