清除浏览器关闭时的会话值

时间:2013-10-11 09:43:48

标签: javascript jquery asp.net

我想clear session values on browser close。所以我使用了下面的代码

 <script language="JavaScript">
window.onbeforeunload = WindowCloseHanlder;
function WindowCloseHanlder()
{
  location.href = 'clear_session.aspx'
}
</script>  

在上面的代码中我使用了一个确定浏览器选项卡关闭的函数。这个代码在IE 8,9,10和Firefox中工作正常。但是相同的代码在chrome中不起作用。我需要知道chrome中的tab close事件也试过下面的代码

chrome.windows.onRemoved.addListener(function (windowId) {
        alert("!! Exiting the Browser !!");
    });

这里使用chrome.windows.onRemoved.addListener来确定javascript中的制表符关闭事件。     对于上面的chrome.windows代码,我们需要包含任何API。您可以提供代码来确定Google Chrome中标签的关闭事件..

2 个答案:

答案 0 :(得分:2)

会话通常用于此。根据维基百科,当没有设置过期日期时,当用户关闭浏览器时会清除cookie。

Cookie设置器可以指定删除日期,在这种情况下,cookie将在该日期删除。如果cookie setter未指定日期,则一旦用户退出浏览器,cookie就会被删除。

答案 1 :(得分:0)

如果您使用的是jQuery,请尝试使用跨浏览器解决方案。

$(window).on('beforeunload', function() {
//Let jQuery take care of detecting browser and implement
  WindowCloseHanlder();
});

方便的语法

$(window).on('beforeunload',WindowCloseHanlder);