重写document.location而不加载

Mir*_*iro 2 javascript url location object-address

我正在开发一个100%ajax的系统,当然除了第一个请求.

我有兴趣使用javascript更改document.location中的地址.但我不希望浏览器在该"新"位置加载页面.

有谁知道我怎么做到这一点?

CMS*_*CMS 8

无法在不导航的情况下更改整个URL,只需想象它可能生成的安全问题.

您只能更改location.hash,这是#符号后面的URL的一部分:

location.hash = "foo";
Run Code Online (Sandbox Code Playgroud)

您的网址将更改为http://someurl.com/#foo


Doc*_*cks 6

要重写整个位置而不仅仅是"哈希"部分,可以使用浏览器历史记录API,尽管目前它似乎只支持Gecko 1.9.3/Firefox 4.

history.replaceState({}, document.title, url)
Run Code Online (Sandbox Code Playgroud)