0

マップ上にマーカーをクラスタの形で表示したいのですが、そのために「markercluster.js」とgoogle maps v3ライブラリを使用しています。しかし、ここで問題となるのは、地図上にマーカーを表示するには、両方のファイルを完全にロードする必要があります。 1つの解決策は、ファイルの少なくとも1つを同期してロードすることですが、非同期と遅延を使用して両方のファイルをロードする必要があります。私は両方のことを達成できる方法はありますか?現在のところ、この方法でファイルをロードしていますが、goercapiがmarkerclusterの前にロードされると、initialize関数内で未定義のmarkerClusterが表示されます。両方のjsファイルが完全にロードされた後に共通の関数を呼び出す方法は?

<script async defer src="js/markerclusterer.js"></script> 
<script async defer src="//maps.googleapis.com/maps/api/js?v=3&callback=initialize"> </script> 

答えて

1

グローバル変数とonloadイベントを使用できます。

<script async defer src="js/markerclusterer.js" onload="init()"></script> 
<script async defer src="//maps.googleapis.com/maps/api/js?v=3" onload="init()"></script> 

次に、あなたの関数は次のようになります。それは、ファイルを働いている答えを

var g_file_loaded = 0; 

function init() 
{ 
    g_file_loaded++; 

    if (g_file_loaded === 2) 
    { 
     // your initialize function here 
    } 
} 
+0

感謝を。 gplusログインで作業していた場合は、私の他の質問にお答えください。 http://stackoverflow.com/questions/38211396/whats-the-difference-between-gapi-auth-signin-and-gapi-auth-authorize-in-gplus – user3542450

関連する問題