web-dev-qa-db-ja.com

サイトがAJAXとJavaScriptで構築されている場合、戻るボタンはどのように動作しますか?

いくつかのWebサイトとWebアプリケーションを作成しましたが、ブラウザーの戻るボタンの動作がどうあるべきかはまだわかりません。

AJAXおよびJavaScriptテクノロジーが使用される場合、戻るボタンを押すと、ユーザーがページを終了したときに残したものとはまったく異なるページがレンダリングされます。アイテムの購入、ページの印刷、ファイルのダウンロードなどの1回限りのアクションである場合を除き、ユーザーは自分が見ているものを正確に見つける必要があると思います。そのような場合、ユーザーは同じHTMLと読み込まれたDOMですが、アクションを繰り返すことなく、おそらく指示があります。

それは正しいアプローチでしょうか?作成および変更されたすべてのDOMをクリアするために、戻るボタンを押した後にページをリロードすることについての質問を見てきましたが、それは新しいページをレンダリングします。

2
Cesar

理想的には、ブラウザは、AJAXを使用して追加されたコンテンツを含む、ページに表示されるコンテンツの履歴に常に戻る必要があります。これは歴史的に困難であり、URLでハッシュタグを使用し、ページの読み込み時にjavascriptを使用してハッシュタグをキャプチャし、問題のAJAX呼び出しを再起動しますが、HTML5の開始以来、 HTML5 History API を使用すると、ずっと簡単になります。 APIを使用すると、AJAXベースのページコンテンツに特に便利な完全なページ更新なしでWebサイトのURLを変更できます。

特定の実装内でそれを行う方法については、 http://www.w3schools.com/jsref/obj_history.asp をご覧ください。

1