javascript - 检查页面是否正在刷新或导航到另一个页面

标签 javascript asp.net page-refresh

如果我的页面正在导航到其他页面或关闭,我想删除所有 cookie,否则我想让页面正常刷新。这样做的原因是Clearing cookie for tabs .

所以我的问题是:
我们如何知道页面正在刷新、正在导航或正在关闭?

我尝试使用

window.onbeforeunload = function() {
    var old_url= window.location.href;
    var new_url=  /* I dont know how to get new URL here */;
    if(old_url == new_url){
      return true;
    }
    else {
      return false;
    }
}

它不工作:(
还有其他办法吗?

最佳答案

我在 JavaScript 中声明了一个全局变量。

<script type="text/javascript">
  var is_refresh_true = true;
</script>

每当我尝试使用 javascript 刷新页面时,我只是将变量值更改为 false
例如:

<script type="text/javascript">
   function Callme(){  
      is_refresh_true = false;
      window.location.href = window.location.href;
    }
</script>

还有 body 的 onUnload 事件:

 function DeleteCokies() {            
     if (is_refresh_true) {
            deleteAllCookies();
     }
 }

这不是一个完美的解决方案,但对我有用。
我仍然在等待完美的答案。如果有人找到请回复。

关于javascript - 检查页面是否正在刷新或导航到另一个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12460315/

相关文章:

javascript - 如何 a.x = a = {n : b} work in JavaScript?

javascript - 将值从一个页面传递到另一个页面

javascript - 替代javascript中的charAt方法

php - 如何刷新正在执行php代码的div

asp.net - 禁用单击按钮时加载页面

javascript - 刷新前执行函数

javascript - Canvas 获取填充区域的百分比

asp.net - 无法在 IIS 上加载文件或程序集“System.Net.Http,版本=4.2.0.0,文化=中性”

ASP.NET MVC3 部分 View 命名约定

ASP.NET MVC Razor 不接受我的有效标记