jqueryのBBQプラグインを使用して、かなりのURLを使用して、フォワード/バックとブックマークのサポートを有効にする方法がわかりません。PHPのpretty urlsを使用したJquery BBQプラグイン
http://mysite.com/store.php?cat_id=5は、ユーザー一度に着弾したとして、ブラウザ経由で直接PHPページにアクセスしたときにこれらのURLは明らかにのみ関連しているhttp://mysite.com/store/5
を経由してアクセスできるように、私は、Apacheのmod_rewriteルールを経由して、私のPHPページのためにかなりのURLを持っています彼らが訪問し、内部リンクのいずれかをクリックする最初のページは、私のJSによって傍受され、コンテンツはajax(つまり、ページをリロードする代わりに)によって更新されます。
これは、バック/フォワード機能とブックマーク機能が動作しないことを意味します。これは、実装するためにBBQに来る場所です。
かなりの例を見ると、私のhrefタグにはまだ#が含まれていないので、かなりのURLでこの作業を行う方法を理解できません。私のHREFタグは次のようになります。
<a class='cat_link' href='/store/5' data-cat-id='5'>
次jqueryのAJAX要求の実行中にそのリンクの結果をクリック:
$('#container').delegate(".cat_link", "click", function(){
$.get('/views/tileview.php',{ cat_id: $(this).data('cat-id') }, function(result){
$("#viewport").hide().html(result).fadeIn(750);
});
});
GETパラメータCAT_IDと/views/tileview.phpからAjaxのコンテンツをロード= 5を生成し、生成されたHTMLを#viewport divにロードします。
今、私の質問は、バーコードを使用してバック/フォワードとブックマークをサポートし、自分のHFSにハッシュを組み込むことなく(つまり現在のURLで)変更できますか? また、URLを変更する必要があるかどうかに関係なく、URLがきれいで、 'パラメータ'が '?='の意味で使用されていないことをどう扱うのですか?
私の現在の実装は、リンクがビジターを正しいURLに連れて来るようになり、(ajax呼び出しと更新されたdivの代わりに完全なPHPページの読み込みが行われても)同じ内容を見ます。これは、バック/フォワードとブックマークのサポートを取得しながら、私が維持したいものです。かなり複雑だ
おかげ アーロン
多分これはBBQ – Hannes
@Hannesのおかげで非常に多く、これは非常に面白そうだし、もっと自分の状況に合うかもしれない、私はしばらく前に書いたjQueryプラグインをhttps://github.com/lautr/asfar役立つ、とすることができます現在私はすべての現在のAjax呼び出しに同じdivを設定しているので、私は完全に私に合っています。私は本当にどのように動作するのか分かりません。これまでに読んだことは、URLの場所/アドレスバーをページリロードをトリガーせずに#以外のもので更新できないということです。どのようにこれを達成していますか? – Alpaus
ダークマジックいくつかのIEバージョンでは(もちろん)サポートされていないhttp://www.w3.org/TR/html5/history.htmlですが、ブラウザがHTML5履歴インターフェイスをサポートしていない場合、Hashフォールバックが適用されます。ちょうど同様に動作します – Hannes