如何知道用户是否点击了“后退”按钮?

我正在使用锚来处理ajaxy网站的独特url。 但是,我想在用户点击浏览器的“后退”按钮时重新加载内容,以便内容始终与url匹配。

我怎样才能做到这一点? 当用户点击“返回”时是否会触发jQuery事件?

您需要使用hashchange事件。 有几个流行的插件。 我一直在使用地址插件并喜欢它。 有些人会建议烧烤。

地址插件

jQuery BBQ

如果你正在使用ajaxurl而不是重新加载页面,我猜你有#something样式的URL,使用哈希导航。 如果是这种情况,您可能希望window.onhashchange事件重新加载适当的内容。

由于并非所有浏览器支持它, 因此有一个插件 ,您的代码看起来像这样:

 $(window).hashchange(function() { //do something with location.hash that just changed }); 

YUI历史记录管理器通过使用setInterval每10ms检查一次哈希来完成此操作。 后面没有注册事件,所以这可能是唯一可行的方法。