#
バックボーン ルーティング、pushState を使用するかどうかに関係なく、アドレス バー内に表示されないようにする方法はありますか?
質問する
449 次
2 に答える
0
現在のバージョンの IE はサポートしていませんpushState
。(IE10 プレビューに表示されます)。
オプションは、通常の (非 Ajax) リンク/フォーム送信などにドロップダウンするか、ハッシュバン ハックを使用するかのいずれかです。
私は確かに言うほど十分にバックボーンを知りませんが、以下は通常のルーティングにフォールバックするのに十分かもしれません:
if (window.history && window.history.pushState) {
Backbone.history.start({pushState: true});
}
于 2012-10-23T06:40:37.460 に答える
0
@Kay、あなたの Babckbone アプリはすべての主要なブラウザーで正しく動作するはずであり、IE8-9 はまだ広く使用されています (残念ながら IE6-7 でさえ)。hash と no を使用pushState
すると信頼性が高くなり、多くの巨大なアプリ (Facebook など) で使用されます。問題は、リンクでハードコーディングされたルートを使用し、それらがハッシュではない場合、ブラウザーで pushState が機能しない場合に問題が発生することです。したがって、pushState を使用し、かつルーターが取得するリンクで通常のパス名を使用するか、pushState を使用せずにハッシュを使用する必要があります。後者はより好ましいIMOです。
于 2012-10-23T06:37:02.217 に答える