1

この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を使用して履歴を管理したい場合は、かなり面倒です。

4

1 に答える 1

0

別の質問で見つけて、私を助けました:

リンクをクリックしたときにpopstateが呼び出されることは想定されていません。ユーザーが戻る/進むボタンでナビゲートするときに呼び出されます。

すべてが想定どおりに機能しています。

于 2012-11-21T14:36:34.030 に答える