Javascript 在chrome中关闭浏览器之前无法获取警报消息

Javascript 在chrome中关闭浏览器之前无法获取警报消息,javascript,google-chrome,browser,Javascript,Google Chrome,Browser,这是我的JS代码,它将在关闭浏览器或选项卡时执行。这将使用户在关闭浏览器之前处于脱机状态 function checkBrowser(){ function warning(){ if($('#loginOrNot').val() == 'loggedIn'){ setTheExpertStatusToOffline(); cleanUpChat(); alert("You are leaving the page

这是我的JS代码,它将在关闭浏览器或选项卡时执行。这将使用户在关闭浏览器之前处于脱机状态

function checkBrowser(){
   function warning(){
        if($('#loginOrNot').val() == 'loggedIn'){
          setTheExpertStatusToOffline();
          cleanUpChat();
          alert("You are leaving the page");
        }
   }
   window.onbeforeunload=warning;
} 

在documnet.ready()上,我调用checkBrowser()方法,以便将函数绑定为browser close。现在的问题是,
在所有浏览器中都能正常工作,但在Chrome中却不能。这里出了什么问题?

必须在函数末尾返回一个字符串。borwser将显示一个确认框,包括您的消息


你试过这个吗:?谢谢你,罗宾。。那很有用。。如何执行setTheExpertStatusToOffline();cleanUpChat();单击“离开页面”时的语句?在返回字符串之前执行它们,我的示例中的console.log就是为了演示这一点。如果我在离开页面之前执行它们,并且用户单击“停留在页面”按钮,那么我在哪里可以恢复这些步骤?这是一个很好的问题,可能值得一提:)
function warning(){
    if(true){
      console.log('leaving');
      return "You are leaving the page";
    }
}
window.onbeforeunload = warning;​