可能重复:
How do I, with JavaScript, change the URL in the browser without loading the new page?Javascript:如何在不刷新页面的情况下更改地址栏中的URL?
我注意到,网络应用程序如Gmail和的Grooveshark可以改变我的浏览器的地址栏中的URL而无需刷新页面。 Ajax显然用于更改内容。我如何更改网址?
可能重复:
How do I, with JavaScript, change the URL in the browser without loading the new page?Javascript:如何在不刷新页面的情况下更改地址栏中的URL?
我注意到,网络应用程序如Gmail和的Grooveshark可以改变我的浏览器的地址栏中的URL而无需刷新页面。 Ajax显然用于更改内容。我如何更改网址?
Gmail和的Grooveshark只改变散,这是通过改变完成:
location.hash = 'blah'
如果你的目标HTML5您可以使用window.history.pushState和window.history.popState,请参阅http://spoiledmilk.dk/blog/html5-changing-the-browser-url-without-refreshing-page
您可能想要查看HTML5推送状态。我知道iQuery Mobile使用此功能来修改位置URL,而不会触发页面加载,它可能是适合您的正确解决方案。
https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history
这里是它如何工作的例子:
window.history.pushState(data, "Title", "/new-url");
请注意,Firefox不支持标题参数(第2版),所以请使用document.title = title。 – 0fnt
'location.hash' https://developer.mozilla.org/en/window.location –