0

問題のサイトは、新しくリリースされたhttp://mry.com/です。そして、私は絶対に困惑しています。ページの遷移は前後の矢印でも機能し、標準のサイト構造のように URL が変化しているように見えますが、ヘッダー画像とナビゲーションは 1 回だけ読み込まれるようです。非同期の ajax ロードである可能性があると思いますが、これはハッシュバングなしでどのように達成されるのでしょうか? どんな洞察も大歓迎です。

4

1 に答える 1

1

HTML5 履歴 API

HTML5 History APIを使用できます。

history.pushState()

呼び出しは、現在のドキュメントに関連付けられた別の履歴エントリも作成およびアクティブ化するという点で、pushState()設定に似ています。window.location = "#foo"しかし、pushState()には他にもいくつかの利点があります。

window.popState

window.popState に関しては:

アクティブな履歴エントリが変更されるたびに、popStateイベントがウィンドウにディスパッチされます。アクティブ化されている履歴エントリが replaceState の呼び出しによって作成されたか、pushState()または replaceState の呼び出しによって影響を受けた場合、popstate イベントの状態プロパティには、履歴エントリの状態オブジェクトのコピーが含まれます。

ブラウザの互換性

HTML5 History API のステータスについて寄稿されたウィキは、こちら にあります

ポリフィルとその他

pjaxHistory.jsは優れた代替手段のようです。

GitHub Tree Sliderの投稿は、すぐに読めます。

于 2012-06-19T17:35:34.730 に答える