0

Googleマップを使用して道順とユーザーの場所を表示するphonegapアプリを作成しています。追加してデフォルトのGoogleAPIを使用しました

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>

これによりアプリの初期化が遅くなり、モバイルデバイスの接続が遅いとクラッシュすることもあります。すべてのスクリプトが読み込まれないとアプリが起動しないことを理解しています。

URL http://maps.google.com/maps/api/js?sensor=falseからJavaScriptをダウンロードしてローカルに保存しようとしましたが、マップの読み込みに失敗することがあります。

アプリ自体に保存できる同等のスクリプトはありますか?または、アプリの読み込み後にスクリプトの読み込みを遅らせることはできますか?

4

2 に答える 2

2

この例で行われているように、APIを非同期でロードできます。このように、JavaScript内で、いつロードするかを決定し(loadScript()を呼び出す)、その後マップを初期化できます。

この例では、APIの読み込みが完了したときに呼び出す関数の名前であるコールバックパラメーターを使用していることに注意してください。

于 2012-08-31T15:31:42.510 に答える
0

Javaスクリプトの非同期プロセスを使用できます。このメソッドは、コールバック応答に基づいています。

Googleマップのjavascriptapiは、非同期読み込みリンクを提供します

function initialize() {
  var mapOptions = {
    zoom: 8,
    center: new google.maps.LatLng(-34.397, 150.644)
  };

  var map = new google.maps.Map(document.getElementById('map-canvas'),
      mapOptions);
}

function loadScript() {
  var script = document.createElement('script');
  script.type = 'text/javascript';
  script.src = 'http://maps.google.com/maps/api/js?sensor=true&callback=initialize';
  document.body.appendChild(script);
}

window.onload = loadScript;
于 2015-05-28T11:56:19.240 に答える