6

Google API は、次の 3 つの方法でページにロードできると思います。

1: シンプルなスクリプト ブロックを使用します。お気に入り

<script type="text/javascript" src="http:/googleapis.com/maps/file.js"></script>

2: 次のような場合にコールバックを使用する

var sc = document.createElement("script");
     sc.type="text/javascript";
     sc.src = "http:/googleapis.com/maps/file.js&callback=func_Name";
    document.getElementsByTagName("head")[0].appendChild(script);

3: そして、次のようなものを使用します

 <script type="text/javascript" src="http://www.google.com/jsapi"></script> 
              google.load("maps", "1");

私の質問: 3 つのアプローチの間に大きな違いはありますか、それとも問題ではありません。スクリプト ブロックとして google.load とマップを使用して検索 API を呼び出すプロジェクトで検索とマップ API を使用できますか?

4

1 に答える 1

0

最初のスクリプト ブロックは、ブラウザがスクリプト ファイルをロードして実行するまでブロックされます。スクリプト ブロックの直後にマップを使用できるようになります。その同期読み込みオプション。

次の 2 つのオプションは非同期です。

2 番目のオプションは、Google マップを初期化してから、callback パラメータで指定されたメソッドを呼び出すように指示します。このアプローチでは、いつマップ API をロードするのが最適かを判断します。そのため、オンデマンドまたはページの読み込み後に行うことができます。

3 番目の方法では、Google JavaScript ローダーを介してマップ API を読み込みます。スクリプトタグの挿入を手動で記述する必要がないというだけで、実際には2番目のオプションと同じ利点があります。Google ローダーに関するドキュメントにも、呼び出したときにページが既に読み込まれているはずであると書かれています ( https://developers.google.com/loader/ )。ただし、この場合は追加のファイルをロードしますが、それを使用して jquery などの他のライブラリをロードすることもできます。Google ローダーは、スクリプトが使用可能になったときに呼び出される 3 番目のオブジェクト引数にコールバック パラメータを指定することもできます。

于 2013-03-11T06:24:46.767 に答える