HTML5历史api:window.history.back()丢失history.state

时间:2015-10-25 09:39:03

标签: javascript html5 html5-history

我正在使用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

1 个答案:

答案 0 :(得分:2)

好的,经过一天的编程后我回想起这个问题,我突然想到href中的#基本上是一个空哈希,可能会覆盖状态。

所以我删除了href="#",现在可以了!