history.jsとこの質問に問題があり、その後の回答が私にとってさらに多くの質問を作成しました。
問題 1:
popstate
とstatechange
リスナーの両方が と によってトリガーされるようですが、その回答者によるpushState()
と、どちらが設計によるものですか?popState()
popstate イベントのみをリッスンしたいのですが、data パラメーターを使用して確認できることはわかっていますが、data パラメーターと title パラメーターを何かに設定してもnull
、次のように IE8/9 のハッシュに余分なものが追加されません。
http://www.site.com/#about/?_suid=13383514298760299522541335484
それを処理するために追加の var を作成できることは知っていますが、それはしたくありません。
問題 2:
また、IE8-9では、メインページのハッシュを削除するにはどうすればよいですか?
History.pushState(null, null, 'http://www.site.com');
URLは次のようになります。
http://www.site.com/#http%2A//www.site.com
そして、私がこれらのいずれかを行う場合:
History.pushState(null, null, '');
History.pushState(null, null, '/');
URLは次のようになります。
http://www.site.com/#./
しかし、私はURLがこれらのフォーマットのいずれかを取ることを望みます:
http://www.site.com
http://www.site.com/
http://www.site.com/#
http://www.site.com/#/
jQuery履歴プラグインを使用しています。