如何使用AJAX保存历史记录github或google +如何保存历史记录。我使用jQuery,我不想使用像#和#这样的hack!技巧,因为如果我这样做,我需要改变我的整个项目,让我的生活变得更加复杂?
答案 0 :(得分:5)
Github和Google+正在使用history.pushState
。
您可以像这样更改当前网址:
history.pushState(null, null, '/the-new-url');
这是Firefox,Chrome,Opera,Safari支持的;不是IE。
答案 1 :(得分:5)
在AJAX和历史方面,基本上有两种选择。
#方法(不是黑客顺便说一下)。由于你不想要那个,你只剩下选项2。
使用PushState。这就是Facebook,GitHub和其他一些人使用的东西。但是并不是所有浏览器都支持它,如果你想要完全跨浏览器兼容,你将不得不使用一个可以降级到选项1的系统。
实现这个的一个非常简单的方法是Backbone.js Router class。
答案 2 :(得分:1)
a simple jQuery hashchange plugin旨在解决此特定问题。
我没用过它;我不知道它如何跟踪网址历史。