我正在使用html5历史api,我有一个带有类别的选择框,当类别被更改时我将id推送到历史状态:
// ....
if (newValue)
{
history.pushState({ selectedCategoryId: newValue }, "Blog Posts");
}
当我离开页面并按下浏览器后退按钮时,类别ID仍然在history.state中,但是当我点击此链接时:
<a href="#" onclick="window.history.back();">← Go back</a>
然后状态不会被保留,当我使用它时:
<a href="#" onclick="window.history.go(-1);">← Go back</a>
它不起作用,我做错了什么?我在Windows 10上使用IE11
答案 0 :(得分:2)
好的,经过一天的编程后我回想起这个问题,我突然想到href中的#基本上是一个空哈希,可能会覆盖状态。
所以我删除了href="#"
,现在可以了!