使用ASP.NET中的母版页使用onunload函数捕获关闭浏览器

时间:2011-06-09 10:10:20

标签: asp.net browser master-pages onunload

我有一个包含母版页的网站。我想抓住用户试图关闭浏览器/选项卡。当我尝试在body标签中使用onunload时,它不仅在我尝试关闭浏览器时触发,而且在我导航到另一个页面时触发。

知道如何只关闭关闭浏览器的事件吗?

1 个答案:

答案 0 :(得分:1)

您无法区分关闭浏览器和导航到其他页面。在这两种情况下都会卸载当前页面。

更新:也许你可以用一些jquery来处理某些情况,即每当点击链接时,设置一些标志以便能够将其与关闭窗口或输入新URL区分开来:

<body onunload="checkForClose()">

...

<script>
var _isNavigation = false;
$(document).ready(function () {
    // whenever a link is clicked set _isNavigation to true
    $('a').click(function () {
        _isNavigation = true;
    });
});

function checkForClose() {
    // show an alert if _isNavigation is not set
    if (!_isNavigation) alert("closing the browser (maybe)");
}
</script>