我使用history.pushstate方法将历史记录添加到浏览器中,并在浏览器中添加如下历史记录。
history.pushState("", "",myurl);
正确添加到浏览器中的历史记录。(当浏览器历史记录点击正确加载的页面时。)
但是,当我点击浏览器中的后退按钮时,它不会返回..
(即我使用hashchange功能在页面中显示不同的内容)。
实际上它需要再次点击返回。(即两次点击后退按钮返回历史记录中添加的上一页。)
如何只需按一下后退按钮即可返回。
答案 0 :(得分:0)
不要将hashchange
用于历史记录;这只是片段的变化。使用popstate
。
window.addEventListener('popstate', function () {
});
答案 1 :(得分:0)
我找到了一个有效的解决方案。
使用replacestate而不是pushstate解决了这个问题。
Pushstate添加历史记录,但它没有指向堆栈的顶部。所以首先从加载的历史记录中单击相同的页面,然后在下一次单击上一页加载。