私は現在、主に独学の目的でアプリを開発していますが、まだjsに完全に慣れていないため、問題の解決に役立つ可能性があります。
私のアプリでは、DOM操作、ページ遷移、ajax呼び出しなどに使用されるJavascriptライブラリ(jqMobi)を使用しています。また、ジオロケーションなどのデバイス機能にアクセスするためにphonegapを使用しています。
アプリを起動したら、デバイスのジオロケーションを取得したいので、サーバーにajax(jsonp)リクエスト(デバイスのジオロケーションを含む)を送信します。これにより、リストの作成に使用するJSONオブジェクトの配列が返されます。 。
ジオロケーションを取得する前に、phonegapがロードされるのを待つ必要があります。そして、jqMobiを使用してajax呼び出しを行い、応答を処理する前に、それがロードされるのを待つ必要があります。
だから私は基本的に私が聞いているイベントをしなければなりません
document.addEventListener("DOMContentLoaded",execute_this,false); //jqMobi is now ready
document.addEventListener("deviceready", execure_sth, false); //Phonegap is now ready
これらのイベントの両方が発生し、以前ではない場合、すぐに関数を実行するにはどうすればよいですか?
jQueryを使用する場合は、その$.Deferred
オブジェクトとそのWhen ... Then Functionを使用しますが、これらにアクセスできないため、別の方法を探しています。