为什么popstate不会在Firefox中激活

时间:2012-07-06 22:18:15

标签: javascript html5 firefox browser-history

我有这个HTML页面。在chrome上,如果我在Button2中单击几次,然后单击导航器后退按钮

<html>
<head>
<script>

function button_onclick(){
    var stateObj = { foo: "bar" };
    history.pushState(stateObj, "page 2", "bar.html");
}

function onPopState(){
    console.log("location: " + document.location + ", state: " + JSON.stringify(event.state));
}


window.addEventListener('popstate', onPopState, false);

</script>
</head>

<body>

<button type="button" onclick="button_onclick()">Button 2</button>

</body>

</html>

我可以在控制台中看到:

location: http://somedomain:8080/examples/bar.html, state: {"foo":"bar"} 

如果我尝试使用Firefox,我什么都没看到?我用Firefow 13.0.1测试过 如果我想使用html5历史记录API管理历史记录,那真非常烦人

1 个答案:

答案 0 :(得分:0)

找到另一个问题并帮助我:

  单击链接时不应该调用 popstate。它的   当用户使用后退/前进按钮导航时调用。

     

一切都按照预期的方式运作。