当我导航到 chrome 中的另一个页面时,我需要更改/删除以前的历史 URL 操作。当我单击 chrome 的后退按钮或按快捷键Alt+左箭头我试过这个代码它不会工作window.onpopstate = function(e) { alert("Current location: " + location.href); var data = e.state; if(data) { alert(JSON.stringify(e.state)); }};
1 回答
缥缈止盈
TA贡献2041条经验 获得超4个赞
您应该window.location.replace(url);
在导航到另一个页面之前调用。
来自 MDN:
"Location.replace() 方法将当前资源替换为提供的 URL 处的资源。与assign() 方法的不同之处在于,使用replace() 后,当前页面不会保存在会话历史记录中,这意味着用户赢了'无法使用后退按钮导航到它。”
请参阅此处了解更多信息:https : //developer.mozilla.org/en-US/docs/Web/API/Location/replace
添加回答
举报
0/150
提交
取消