有没有办法可以在不重新加载页面的情况下修改当前页面的URL?如果可能的话,我想访问#hash 之前的部分。我只需要在域之后更改部分,因此我不会违反跨域策略。 window.location.href = "www.mysite.com/page2.php"; // Sadly this reloads
4 回答
郎朗坤
TA贡献1921条经验 获得超9个赞
HTML5引入了history.pushState()
和history.replaceState()
方法,分别允许您添加和修改历史条目。
window.history.pushState('page2', 'Title', '/page2.php');
从这里了解更多相关信息
紫衣仙女
TA贡献1839条经验 获得超15个赞
如果要更改URL但不想将条目添加到浏览器历史记录,也可以使用HTML5 replaceState:
if (window.history.replaceState) { //prevents browser from storing history with each change: window.history.replaceState(statedata, title, url);}
这将“打破”后退按钮功能。在某些情况下可能需要这样做,例如图像库(您希望后退按钮返回到图库索引页面而不是向后移动您查看的每个图像),同时为每个图像提供其自己唯一的URL。
添加回答
举报
0/150
提交
取消