3
  1. 在 Chrome 中打开一个新标签(例如打开http://google.com )

  2. 打开一个testpage.htm包含history.pushState({},"test","#lightbox"); 将 url 更改为testpage.htm#lightbox

  3. 如果您点击 chrome 的后退按钮,则 url 将更改为http://google.com,这是两种状态,而不是一种

firefox 和 msie10 都很好用,所以这是一个 chrome 问题,我该如何解决?有解决方法吗?

先感谢您

(随意给我的问题一个更好的标题,并随时纠正我的英语)


笔记:

在第 2 步中,您也可以使用window.location.hash = "#lightbox"但执行相同的问题

在第 3 步中,您可以在代码中模拟后退按钮,history.back()在这种情况下使用 url 切换到正确的testpage.htm,因此这仅与 Chrome gui 的后退按钮有关

我也试过

window.addEventListener("popstate", function(ev){ ev.preventDefault(); });
window.addEventListener("hashchange", function(ev){ ev.preventDefault(); });

没有成功 :(


更新 2:使用History.js做同样的事情

4

0 回答 0