window.history.pushState([data], 'Title', '/url');
私はここでデータを設定する際に、どのように使用できますか、これはどのような種類のデータですか?window.history.pushState()データは、いつ、どのように取得されますか?
window.history.pushState([data], 'Title', '/url');
私はここでデータを設定する際に、どのように使用できますか、これはどのような種類のデータですか?window.history.pushState()データは、いつ、どのように取得されますか?
あなたの選択した履歴項目に関連するデータ。その状態が再訪されるとアプリケーションには、それに関連付けられたいくつかのデータがあります。ユーザーが以前に表示していたページの場所、または入力したが決して送信しなかったフォームオプションを保存することができます。
ブラウザは、戻るボタンが押されたときにメソッドを呼び出します。これにより、スタックにプッシュされた最新の状態がポップされます。開発者は、popstateイベントのカスタム処理(状態に関連付けられたデータの使用など)のために、イベントリスナーをwindow
オブジェクトに追加する必要があります。
// Below function will get fired for every app-wide popstate
window.addEventListener('popstate', function(event) {
// Can access state data using event.state.data
});
これはプッシュされている状態のユニークな識別子のようなものです。その特定の状態のStateをreplaceする時が来たら、それは役に立ちます。
例:
ストア状態: var stateObj = { foo: "bar" }; history.pushState(stateObj, "page 2", "bar.html");
あなたは状態を交換するためにこれを行うことができます: history.replaceState(stateObj, "page 3", "bar2.html");
参考:https://developer.mozilla.org/en/docs/Web/API/History_API#The_pushState()_methoddata
オブジェクトは、構造化保存するためのものです
私は置き換える必要はありません。私はそのデータを呼び出す必要がありますが、問題は解決しました。 –
ありがとう、私は理解していますが、私は戻るボタンを押したときにページがURLから再び読み込まれます。ちょうどjavascriptを使っていくつかの変化するコンテナに以前のコンテンツをロードできますか? –
@YuriNkoページロードの間に持続する必要があります。そのため、ここではpushStateを使用することが意図されています。ただし、ブラウザを閉じるまでユーザー情報を保存するsessionStorage/localStorageを試すこともできます。 – JLewkovich
ありがとう、私はすでにthosについて知っています...私はこのアプローチを取って、毎回HTML全体ではなくサーバーからJSONを読み込みます...また、他のコンテンツのリロードも有用ではありません。 –