使用ajax支持浏览器后退按钮而不依赖于散列更改?

时间:2011-05-24 15:36:41

标签: jquery browser-history jquery-bbq

我目前正在使用jQuery BBQ插件来启用bowser导航按钮,但我遇到的问题是,如果用户为其中一个页面保存了书签,请说...

www.mysite.com/#page1

当用户通过书签返回时,整页必须首先加载...

www.mysite.com/

之前,url的哈希部分可以用于ajax回调来完成页面。

为了解决这个问题,我尝试在主页面的所有url调用上只创建一个“骨架”页面,以便通过ajax获取所有“内部”内容,但这似乎不是一个很好的解决方案。

有没有人知道任何不使用'hash'方法支持'后退按钮历史记录等的方法/插件?

1 个答案:

答案 0 :(得分:5)

防止双页加载的唯一解决方案是使用HTML5 History API,它允许您直接修改URL,而不必处理哈希值。

由于HTML5 History API相对较新,所有浏览器都支持不同的方式。您可以使用History.js来规范化浏览器之间的功能。

要了解有关哈希问题的更多信息,以及哈希与HTML5历史记录API的比较,请阅读this article