jQuery:window.unload无法与Chrome 72.0.3626.109

时间:2019-02-21 06:48:25

标签: javascript jquery html html5 webpage

我正在使用asp.net mvc创建一个Web应用程序。我想检测用户的手动刷新,

但是我无法获得以下事件

  

1:卸载前

     

2:卸载

我尝试过的以下方式

  

1

$(window).on('beforeunload', function () {
    pageCleanup();
});
  

2

$(window).on("unload", function () {
    pageCleanup();
});

function pageCleanup() {  
    alert(1)
}
  

3

window.addEventListener("unload", logData);

function logData() {
    alert(1)
}
  

4

$(window).unload(function () {
    alert('1');
});
  

上面是一个带有警报的示例,我想在其中进行ajax调用   卸载功能

但是当用户按下任何一种刷新(F5,ctrl-shift-R,ctrl-R,来自“网址”标签)时,这些命令似乎都不执行

我现在应该尝试什么?

2 个答案:

答案 0 :(得分:3)

您好,请检查一次,让我知道

<html>
<head>
<title>Refresh a page in jQuery</title>

<script type="text/javascript" src="jquery-1.4.2.min.js"></script>

</head>

<body>

<h1>Stop a page from exit with jQuery</h1>

<button id="reload">Refresh a Page in jQuery</button>

<script type="text/javascript">

    $('#reload').click(function() {

        location.reload();

    });

    $(window).bind('beforeunload', function(){
        return '>>>>>Before You Go<<<<<<<< \n bro!!Working';
    });

</script>

</body>
</html>

答案 1 :(得分:2)

对于bind,您应该使用beforeunload

$(window).bind("beforeunload", () => alert(1));
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>