LabeledMarkerを使用して Google マップを表示する Web サイト ページを拡張しようとしています。Google Maps API は、LabeledMarker によって拡張される GMarker というクラスを定義します。
問題は、LabeledMarker スクリプトを正しく読み込めないように見えることです。つまり、Google API が読み込まれた後、「GMarker が定義されていません」というエラーが表示されます。
このような場合、スクリプトを指定する正しい方法は何ですか?
最初に Google API の URL に ASP.NET の ClientScript.RegisterClientScriptInclude() を使用し、その直後に LabeledMarker スクリプト ファイルを使用しています。
最初の Google API ローダーは、実際の GMarker クラスをロードするスクリプト リンクをさらに書き込みます。次のスクリプト ブロック (LabeledMarker スクリプト) が処理される前に、これらすべてのスクリプトを実行するべきではありません。
生成された HTML を確認したところ、スクリプト ブロックが正しい順序で出力されています。
<script src="google api url" type="text/javascript"></script>
...
(the above scripts uses document.write() etc to append further script blocks/sources)
...
<script src="Scripts/LabeledMarker.js" type="text/javascript"></script>
繰り返しますが、LabeledMarker.js は、Google API の読み込みが完了する前に実行されるようです。