ブラウザの履歴を操作する HTML5のHistory APIを使うと、ページ遷移を行わずにJavaScriptでブラウザの履歴を操作できます。この仕組みを利用すると、Ajaxでコンテンツを変更しつつ、通常のページ遷移と同じように履歴を追加することができます。ブラウザの戻るボタンも問題なく使用できます。URLの#を使う方法と比べてURLがすっきりするのでユーザーにとって馴染みやすく、またAjaxコンテンツにおける_escaped_fragment_のような特別なURLを用意する必要がないという利点があります。History APIはIE6から9までのブラウザではサポートされていません。 実際に使われている例として、GitHubのプロジェクトのファイル一覧ビューはHistory APIが利用されており、部分的にコンテンツを読み込んで表示し、ページ全体は読み込まずにURLを変えています(図1)。