2011-12-19 19 views
8

私は現時点で複雑なAJAXアプリケーションを作成しており、サイト全体がクリーンなURLを持っています。現時点でPHPは各ページの基本レイアウトを作成しますが、ユーザーがリンクをクリックしたときに各ページから移動する必要はなく、URLにハッシュを付けることは望ましくありません。サイトの残りの部分に合わせてください。私はこれがサイト上の負荷を切り取っていることを知っていますが、これはよく尋ねられますが、技術的には同じであってもアドレスバーのURLを変更するだけのHTML5の方法があれば疑問に思っていましたページ。ページから離れずにブラウザのURLを変更するにはどうすればよいですか?

答えて

3

でその上

history.pushState({},"URL Rewrite Example","https://stackoverflow.com/example") 

もっと他の人が述べたように、HTML5のhistory.pushstateは、移動するための方法です。 githubのリポジトリを参照して実際の動作を確認してみてください(https://github.com/visionmedia/express)。

トラブルは、history.pushstateをサポートするIEの唯一のバージョンです。これはIE10です。

多くのサイトがhashbang#を使用しています。 TwitterなどのURL(例:https://twitter.com/#!/Sironfoot)。ハッシュバンは、Ajaxの強力なウェブサイト(詳細はhttp://code.google.com/web/ajaxcrawling/docs/specification.html)をまだトラウリングして索引付けできるので、そのルートに行くことができるように、検索エンジンによって合意されたURLパターンです。

唯一の方法は、それをサポートするブラウザにはhistory.pushstateを使用し、サポートしていないブラウザではフルページのリフレッシュに戻すことです。

関連する問題