10

私はjQueryモバイルでアプリケーションに取り組んでいます。userpanelのすべてのページを1つの大きなファイルに入れて、1つの大きな.jsファイルで実行しようとしています。私が知らないのは、.js ファイルを次のように記述できるかどうかです。

ユーザーパネルがロードされたときに初期化する

$(document).on('pageinit', function(){

});

そして、これを置くことができれば、特定のページがIDによって呼び出されるときよりも:

$("#userpanel").on('pageshow', function(){

});

すべてのページで次のような最初のページ内:

$(document).on('pageinit', function(){

    $("#userpanel").on('pageshow', function(){

    });

    $("#*********").on('pageshow', function(){

    });

    $("#*********").on('pageshow', function(){

    });

});

などなど、これが仕組みなのか、jQuery/JS の基本概念を誤解しているのでしょうか。はいの場合、良い方法は何ですか?

4

1 に答える 1

3

まず第一にpage events、他のページイベントの子として使用しないでください、そのような動作を意図したものではありませんでした. この場合、これらのpageshowイベントはすべて、親なしで通常どおりトリガーされますpageinit

これが実際の例jsFiddleです。

jQuery Mobileページ イベントの詳細については、このARTICLEを参照してください。より透明性を高めるために、これは私の個人的なブログです。または、ここで見つけることができます。

したがって、ページ イベントを宣言する正しい方法は次のようになります。

$("#userpanel").on('pagebeforeshow', function(){

});

$("#userpanel").on('pageshow', function(){

});

$("#userpanel").on('pagebeforeshow', function(){

});

$("#userpanel").on('pageshow', function(){

});

$("#userpanel").on('pagebeforeshow', function(){

});

$("#userpanel").on('pageshow', function(){

});
于 2013-02-01T20:00:44.803 に答える