Javascript 在用户单击“后执行操作”;请留下这一页;就在浏览器关闭之前

Javascript 在用户单击“后执行操作”;请留下这一页;就在浏览器关闭之前,javascript,Javascript,我为这个愚蠢的问题道歉。我有一个简单的代码: window.onbeforeunload = function(){ return 'Are you sure you want to leave?'; }; 现在,我想在用户选择“离开此页面”后放置一系列代码 我知道我们可以用这个: window.onunload = function(){ alert('bye'); }; 但window.onunload仅在页面刷新或重定向时有效,而在浏览器关闭时无效 我也试过: window.o

我为这个愚蠢的问题道歉。我有一个简单的代码:

window.onbeforeunload = function(){
  return 'Are you sure you want to leave?';
};
现在,我想在用户选择“离开此页面”后放置一系列代码

我知道我们可以用这个:

window.onunload = function(){
  alert('bye');
};
但window.onunload仅在页面刷新或重定向时有效,而在浏览器关闭时无效

我也试过:

window.onbeforeunload = function(){
  if(confirm('are you sure?'))
     alert('exit') //perfectly works
  else
     return false //will display the popup "Stay/Leave" with the message "false" - this is not what i expect
     //preventDefault() -got some error, 
};
用户单击“离开此页面”后添加代码的最佳方式是什么

是否可以捕获用户选择的是停留还是离开


关键是在用户选择任何选项后做一些事情,没有真正可靠的方法可以做到这一点,而无需创建您自己的浏览器,该浏览器将具有您想要的功能


开始时,您可以看看没有真正可靠的方法来实现这一点,而无需创建您自己的浏览器,它将具有您想要的功能


开始时,你可以看看简短的回答:

你不能可靠。可能重复感谢@dystroy的回复。我已经检查了你共享的链接,但它仍然使用窗口的卸载事件,只有在重新加载或重定向页面时,该事件才能正常工作,但在浏览器关闭和继续阅读时,它说不依赖于卸载前,唷!想知道是否真的没有其他方法你到底希望发生什么?答案很简单:没有可靠的方法在浏览器窗口关闭时做一些事情。如果用户友好地关闭了您的选项卡,您可能希望在更改本地存储等小操作中获得成功,但除了标准对话框功能之外,您无法执行任何请求或显示任何内容。简短回答:您无法可靠地完成。可能重复感谢@dystroy的回复。我已经检查了你共享的链接,但它仍然使用窗口的卸载事件,只有在重新加载或重定向页面时,该事件才能正常工作,但在浏览器关闭和继续阅读时,它说不依赖于卸载前,唷!想知道是否真的没有其他方法你到底希望发生什么?答案很简单:没有可靠的方法在浏览器窗口关闭时做一些事情。如果用户友好地关闭您的选项卡,您可能希望在更改本地存储等小操作中成功,但除了标准对话框功能之外,您无法执行任何请求或显示任何内容。