いくつかのアイテムhtmlがあり、それぞれに1つのJQMページが含まれています。インデックスページもあります。これはマルチJQMページのhtmlであり、各JQMページがアイテムをリストするカテゴリとして含まれています。
index.html item1.html item2.html
+------------------+ +--------+--------+ +--------
|+-------+ | +--|Cat. | Next|->|Cat.
||.cont- | | | +--------+--------+ |--------
||ent |+-------+|<----+ | | |
|+-------+|#cat1 || | | |
| | || |bla bla bla | |bla bla
| |link1+---------->| | |
| |link2 || | | |
| +-------+| +-----------------+ +--------
|+-------++-------+|
||#cat2 ||#cat3 ||
|| || ||
||link4 ||link3 ||
|| || ||
|+-------++-------+|
+------------------+
現在、スムーズなajaxの読み込みで、インデックスからアイテムにリンクできます。ただし、アイテムからindex#cat1にリンクし直したい場合data-ajax='false'
は、インデックスが複数ページのhtmlであるため、使用する必要があることに気付きました。(data-rel='back'
前のページが常にindex.htmlであるとは限らないため、使用できません)。
を使用する場合ajax='false'
、リストとアイテムを頻繁に切り替えるとスムーズな移行が失われます(リストに戻るたびに完全にリロードされます)。例えば:
-full-load-> index#cat1 -ajax-load-> item2 -full-load(again)-> index#cat1
質問
が欲しいです:
-full-load-> index#cat1 -ajax-load-> item2 -ajax-switch-to-already-loaded-> index#cat1
data-ajax='false'
リンクがクリックされたときに、そのindex#cat1ページがすでにdomにあるかどうかを最初に検索するように、jqueryモバイルロジックをオーバーライドするにはどうすればよいですか?そうである場合は、そのJQMページに切り替えてください。存在しない場合は、ajaxを使用せずにindex#cat1をフルロードします(デフォルトの動作のように)。
ユーザーはitem1.htmlから開始して、index.html#cat1に移動できることに注意してください。
data-full-url="index.html#cat1"
既存のページを簡単に検索できるようにするなど、各JQMページをいくつかのカスタム属性でマークアップする必要があることはわかっています。ただし、私の主な弱点は、既存のJqueryMobileリンクロジックを変更する方法です。