javascript - 单击浏览器后退按钮时触发事件

标签 javascript php jquery html

我正在尝试在单击浏览器后退按钮时运行一些代码。

如何在不更改浏览器历史记录的情况下找到浏览器的后退按钮?

我尝试了下面的代码。 我在 else block 中遇到异常:“事件未定义”。

window.onunload = HandleBackFunctionality();
  function HandleBackFunctionality()
  {
    if(window.event)
    {
      if(window.event.clientX < 40 && window.event.clientY < 0)
      {
        alert("Browser back button is clicked…");
      } else {
        alert("Browser refresh button is clicked…");
      }
    } else {
      if(event.currentTarget.performance.navigation.type == 1)
      {
        alert("Browser refresh button is clicked…");
      }
      if(event.currentTarget.performance.navigation.type == 2)
      {
        alert("Browser back button is clicked…");
      }
    }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>

最佳答案

使用

$(window).on("navigate", function (event, data) {
  var direction = data.state.direction;
  if (direction == 'back') {
    // do something
  }
  if (direction == 'forward') {
    // do something else
  }
});

关于javascript - 单击浏览器后退按钮时触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26881550/

相关文章:

javascript - 如何在动态选择时获取单选按钮的名称和值 - 在 jQuery 中?

c# - 如何在 ASP 中单击 ListView 中的订单号时打开包含订单详细信息的弹出窗口

javascript - 访问元素,其中包含当前 &lt;script&gt;

javascript - JSONP ajax 调用执行错误方法,其响应为 200 ok

带有拼写检查的 Javascript RTE

javascript - 如果值的长度达到最大长度,如何在 div 和 tirm/slice 中添加复选框的值

php - 如何在一个 php 文件中定义 mysqli 连接,然后在另一个文件中使用它?

php - 如何检测 Zend Framework 2 应用程序是在控制台还是 HTTP 上下文中运行?

php - 比较 MySQL 中的日期与 PHP 中的日期

javascript - <br> 当我 alert() PRE 标签的内容时被删除