私はPhonegapを持っています& jQueryモバイルアプリはAndroidとウェブでうまく動作します。 iOSでは、予期せぬ結果が出ています。これは、ほとんどのアプリケーションプロセスのハンドラをバインドするdocument.pageinitイベントが2回発生しているためです。iOS(jQueryMobile)でドキュメントのページが複数回発生する
いいえ、私はそれを2度はバインドしませんでした。いいえ、私はdocument.readyを使用しませんでした。はい、私は文書の早い段階で、他の機能の中ではなく、文書にバインドしました。
$(document).on('pageinit',function(event){
alert(' Pageinit on document');
//Some more code
})
初めて起動すると、スプラッシュ画面はまだ表示されます。この時点で、MacBook ProをXCodeでテストしても、コンソールは使用できません。console.logを使用した場合、上記のメッセージはコンソールに表示されませんでした。
jQueryMobileが最初のページを作成した直後に2回目の火災が発生します。
この二重点火の原因は何ですか?私はそれについて何ができますか?
編集:私はそのページの後半に気付きましたが、もう一度起動するのではなく、新しいdata-role = 'page' divを開くたびに発生します。下の私の答えを見てください。
Thaaaaank you!私は最後の数分間の解決策を探していました.Googleは "pageinit twice"と言っています。あなたの '.one()'は理想的な解決策です。私ができる場合、私は10でupvote :) – PiotrK
驚くほど、私はデスクトップのブラウザ(IE10とクロム/ Windows)で私のアプリのコードを使用して、iOSではなく、この動作を見てきました。この提案された修正はそのような場合にも役立ちました。素晴らしい提案。ありがとう! –