【问题标题】:jQuery back or forth button [duplicate]jQuery后退或前进按钮[重复]
【发布时间】:2011-11-10 14:41:25
【问题描述】:

可能重复:
Is there a way to catch the back button event in javascript?

如何检测后退或后退按钮点击?

例如

if(back_button_clicked)
{
    alert('back button was clicked');
}
else if(forward_button_clicked)
{
    alert('forwardbutton was clicked');
}

因为我想在用户执行此操作时运行一些特殊功能。

【问题讨论】:

标签: jquery


【解决方案1】:

你不能。后退和前进等浏览器按钮不会显示给 Javascript。您可以使用 JQuery 的 unload() 事件在用户离开页面时运行代码,仅此而已。

【讨论】:

    【解决方案2】:

    试试这个 jQuery 插件 -

    http://tkyk.github.com/jquery-history-plugin/

    【讨论】:

    • 我已经在使用历史插件了!我需要做的是在用户单击其中一个按钮时运行一些功能。
    【解决方案3】:

    您可以绑定到窗口的卸载事件:

    $(window).unload( function () { alert("Bye now!"); } );
    

    jQuery Documentation

    但这不会告诉你方向 - 这重要吗?

    【讨论】:

      【解决方案4】:
      window.onpopstate = function (evt) {
          if (event.state) {
              alert('back or forth clicked');
          }
      }
      

      【讨论】:

      • 只有少数浏览器支持 History API(pushState 和 onpopstate)
      • 这看起来像您从重复的问题中抄袭了Andy's answer
      • 我几乎不会称之为抄袭!而是显示问题的答案,而不是重复的问题,而是解决两个问题的答案!
      猜你喜欢
      • 2019-01-29
      • 1970-01-01
      • 2011-11-21
      • 1970-01-01
      • 2011-01-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多