2013-03-04 57 views
0

我使用history.pushstate方法将历史记录添加到浏览器中,并在浏览器中添加如下历史记录。HTML5 history.pushState

 history.pushState("", "",myurl); 

历史在浏览器中正确添加。(当浏览器历史记录点击得到加载正确的页面。)

但是,当我在浏览器中点击后退按钮,它不回去..

(即我使用hashchange功能来显示页面中的不同内容)。实际上,它需要再次点击才能返回(即双击返回按钮可返回历史记录中添加的上一页)。

我怎样才能让它只返回一次点击后退按钮。

+0

这是一个使用HTML5历史教程的SO问题:[使用HTML5 History API(Pushstate?)的好教程](http://stackoverflow.com/questions/4015613/good-tutorial-for-using-html5-历史-API pushState的)。正如答案所提到的,你应该考虑使用['History.js'](https://github.com/balupton/History.js)。 – mc10 2013-03-04 05:37:04

回答

0

我找到了一个可行的解决方案如下。

使用replacestate代替pushstate解决了这个问题。

Pushstate添加历史记录,但不会指向堆栈顶部。因此,首先单击载入历史记录中的同一页面,然后在下一次单击上一页面时加载。

相关问题