1

サイト上のjquerymobileをバージョン:v1.0b1から現在:1.2.0に更新する前は、これは機能していました:

$(document).ready(function() {
   $('.ui-page').live('pageshow', function(e, ui) {
     // do something
   });
});

しかし、更新後、これは機能しなくなります。しかし、これはします:

$(document).ready(function() {

});

$('.ui-page').live('pageshow', function(e, ui) {
   // do something
});

コードを取り出してdomの外に置くと、機能します。domの準備ができている中でそれを機能させる方法はありますか?

4

1 に答える 1

1

jquery mobile に置き換える必要があり$(document).ready()ます。$(document).bind('pageinit')

重要: $(document).ready() ではなく、$(document).bind('pageinit') を使用してください

$(document).ready()jQuery で最初に学ぶことは、DOM が読み込まれるとすぐにすべてが実行されるように、関数内でコードを呼び出すことです。ただし、jQuery Mobile では、ナビゲートするときに Ajax を使用して各ページのコンテンツを DOM にロードし、DOM Ready ハンドラーは最初のページに対してのみ実行されます。新しいページが読み込まれて作成されるたびにコードを実行するために、pageinitイベントにバインドできます。このイベントについては、このページの下部で詳しく説明しています。

詳細については、JQuery Mobileを参照してください。

于 2012-10-12T20:14:44.003 に答える