我注意到像GMail和GrooveShark这样的网络应用程序可以在不刷新页面的情况下更改浏览器地址栏中的URL。显然使用了Ajax来更改内容。我该如何更改URL?
可能是重复问题:
如何使用JavaScript在不加载新页面的情况下更改浏览器中的URL?
可能是重复问题:
如何使用JavaScript在不加载新页面的情况下更改浏览器中的URL?
Gmail和Grooveshark仅更改哈希值,这是通过更改以下内容完成的:
location.hash = 'blah'
如果你的目标是支持HTML5的浏览器,你可以使用 window.history.pushState 和 window.history.popState 方法,详情参见 http://spoiledmilk.dk/blog/html5-changing-the-browser-url-without-refreshing-page
window.history.pushState(data, "Title", "/new-url");
location.hash
https://developer.mozilla.org/zh-CN/docs/Web/API/Window/location - Joseph Yaduvanshi