在我的聊天应用程序中,我需要在关闭应用程序时得到用户的确认。
因此,我使用window.onbeforeunload
进行确认提醒,并使用window.onunload
进行确认提醒logout()
。
window.onbeforeunload
在Opera中不起作用,我的消息也不会在Firefox中显示。window.onunload
在Safari,Opera和Firefox中不起作用。我的JavaScript代码将是:
// Used for confirmation, to closing the window
window.onbeforeunload = function () {
return "Are you sure want to LOGOUT the session ?";
};
// Used to logout the session, when browser window was closed
window.onunload = function () {
if((sessionId != null)&&(sessionId!="null")&& (sessionId != ""))
logout();
};
我也尝试过使用JQuery同样的功能,<script type="text/javascript">
$(window).on('beforeunload', function() {
return 'Are you sure want to LOGOUT the session ?';
});
$(window).unload(function() {
if ((sessionId != null) && (sessionId != "null") && (sessionId != "")) {
logout();
}
});
</script>
最佳答案
不幸的是,这些浏览器不支持您使用的方法。为了支持我的回答(这种不支持的行为),我在下面提供了链接。onbeforeunload
和onunload
在opera
中不起作用...以支持此功能
尽管onunload
事件无法完全起作用,但是如果用户单击链接以导航到未保存表单的页面,则可以使用onunload
显示警告。onunload
无法在safari
中工作...以支持此功能
您宁愿尝试在Safari浏览器中使用pagehide
事件代替onunload
。onunload
无法在firefox
中工作...以支持此功能
他们还没有想出FF的解决方案
祝你好运。