History.js onstatechange不会使用锚点触发

时间:2013-10-13 11:23:05

标签: javascript history.js

请告诉我我做错了什么。

我正在使用History.js HTML5版本。当我的网址类似

example.com/?param=1

我将其更改为

example.com/?param=2

使用History.pushState(...), 一切都按预期进行。

但是当我的Url中有一个锚点(只是一个与js无关的普通锚点)时,这样:

example.com/?param=1#someanchor

我将其更改为

example.com/?param=2#someanchor

我的浏览器中的网址确实发生了变化,但是 onstatechange不会再触发了!您是否愿意让我知道如何使用我的网址中存在的哈希来更新onstatechange。

注意:我每次都在pushState()中传递整个url;

我试过onpopstate。它几乎总是触发..除了URL等于初始URL的时间。

1 个答案:

答案 0 :(得分:1)

有一个特定的事件:window.onanchorchange