有没有办法在JavaScript中捕获后退按钮事件?

时间:2020-03-06 14:45:27  来源:igfitidea点击:

当仅更改位置哈希值时,是否有办法应对javascript中的后退按钮被击中(或者按下退格键)的问题?也就是说,当浏览器不与服务器通信或者重新加载页面时。

解决方案

onLocationChange也可能有用。不确定这是否是仅适用于Mozilla的东西,看起来可能是。

使用hashchange事件:

window.addEventListener("hashchange", function(e) {
  // ...
})

如果我们需要支持较旧的浏览器,请查看Modernizr的HTML5跨浏览器Polyfills Wiki页面中的" hashChange"事件部分。

你看过这个吗? http://developer.yahoo.com/yui/history/

我创建了一个可能对某些人有用的解决方案。只需在页面上包含代码,就可以编写自己的函数,单击后退按钮时将调用该函数。

我已经在IE,FF,Chrome和Safari中进行了测试,并且都可以正常工作。我在IE和FF中使用的解决方案基于iframe,而无需进行持续轮询,但是由于其他浏览器的限制,Safari中使用了位置哈希。