私は現在、jQuery Mobile に基づくアプリに取り組んでいます。その瞬間はとても光沢があり美味しそうに見えたので選びましたが、作業を重ねるにつれて、複数のことに行き詰まります.
すべてのページを個別に作成し、正常に動作していましたが、相互にリンクした後、いくつかの問題が発生し始めました。
ページごとに、さまざまなスクリプトとサードパーティのライブラリをロードする必要があります。いくつかの調査の後、data-role="page" の ID を追加して .delegate() でロードすることにしましたが、1 つの問題が発生するので、質問:
1) 別のページに移動するときに、ロードされているすべてのスクリプトをアンバインド/キル/クリア/削除する方法は?
問題は、「ページ2」に移動して次のことを行うときです。
$(document).delegate('#page-2', 'pageinit', function() {
...do something
});
「ページ1」または「ページ3」に移動した後、 #page-2 .deligate() でロードされたものはDOMに残り、別のページのスクリプトと競合します。
PS 乱雑ですが、ファイル全体はここで見ることができます - http://cloud.ignatynikulin.com/011R3x2k401i271N420N
PPSもう1つの質問の簡単な更新:
条件が .deligate() pageInit 内で機能しない場合と、それを機能させる方法は?
ありがとうございました