是否可以更改页面的整个URI而无需重新加载页面并实际转到新的URI?我知道我们可以更改相对于根域的URL,即stackoverflow.com - > stackoverflow.com/asdf
可以这样做吗?
stackoverflow.com - > quora.com
我要求确保这是不可能的。
编辑:这个问题有所不同,因为我问的是,是否可以更改域名之后的路径,而不是域名本身。
答案 0 :(得分:4)
根据设计,似乎无法更改域名:
http://badassjs.com/post/840846392/location-hash-is-dead-long-live-html5-pushstate
引用文章:
window.history.pushState(data,“Title”,“/ new-url”);
最后一个参数是新网址。出于安全考虑,您只能这样做 更改URL的路径,而不是域本身。
答案 1 :(得分:1)
回答您是否可以执行以下操作的问题:
stackoverflow.com -> quora.com
使用HTML历史记录API只允许将状态推送到 在同一域的网址中,答案是否。
答案 2 :(得分:0)
以前遇到过这个问题而无法重新加载,无法找到解决方法... 它是Location对象http://www.w3schools.com/jsref/obj_location.asp的一部分。即使您更改查询参数,它也会重新加载页面,这是有意义的,最后是一个不同的URL。 到目前为止,你唯一能做的就是玩#(hash)参数。
可能对您有所帮助的是HTML5历史记录API http://html5demos.com/history。它可以根据您的需要修改网址...但仅限于子域。