10

phonegapデバイスの準備完了イベントで問題が発生しています。私はiOS6.0でテストしています。

デバイスレディが起動されると、DOMはレディではありません。イベントリスナーでイベントを一部のDOM要素にバインドするとdeviceready、これらの要素はこの初期の時点では存在しないため、通知を受け取りません。

では、DOMとphonegapの両方がロードを完了するまで待つためのベストプラクティスは何ですか?

4

3 に答える 3

3

jqueryを使用している場合は、これを試してください

$(document).ready(function(){

    document.addEventListener("deviceready",onDeviceReady,false);       
});

function onDeviceReady(){
    //write your function body here

}

JavaScriptのみを使用している場合は、これを試してください

if(document.readyState === "complete") {
  document.addEventListener("deviceready",onDeviceReady,false); 
}

function onDeviceReady(){
        //write your function body here

    }
于 2014-04-21T16:47:32.067 に答える
1

このようなことを試してください:

function onLoad(){
  document.addEventListener("deviceready", onDeviceReady, false);
}

function onDeviceReady(){
  // Now safe to use the PhoneGap API
}

それで:

<body onload="onLoad()">

これにより、deviceready が呼び出される前に DOM の準備が整っていることが保証されます。

于 2012-11-09T21:22:21.887 に答える