后退按钮与jQuery / Ajax&组合的问题history.pushState

时间:2011-08-02 13:24:19

标签: jquery ajax

目前我正在开发一个使用AJAX“滚动”不同页面的网站。我也使用window.history.pushState来更改网址。

假设您在“mywebsite.com”上,并点击菜单中的“第1页”。然后,当前内容淡出,“页面1”的内容淡入,而不重新加载页面。该网址也会从“mywebsite.com”更改为“mywebsite.com/page_1/”。一切正常!

当我按下后退按钮时,URL会更改回“mywebsite.com”,但原始内容不会“重新加载”。我知道有一种方法可以使用hashtags解决这个问题,但这不是我希望它工作的方式。

我希望有些人可以帮助我。非常感谢!

1 个答案:

答案 0 :(得分:1)

浏览器不会自动恢复页面状态。相反,它会触发popstate事件,然后让您根据需要制定页面。

因此,您需要订阅onpopstate event

(显然,只有支持HTML5历史API的浏览器才支持此功能。)