オブジェクト インスタンスを制御せずに (および初期化せずに)、既存の Google マップ オブジェクトに KML レイヤーを追加しようとしています。
これまでのところ、オブジェクトが (DOM): window.google.maps... にあることがわかりました (わかりました、これは単なるコンストラクタであり、レンダリングされた Map オブジェクト自体ではありません)。
これは、google.maps.Map オブジェクトの既存の (?) インスタンスに追加したいものです。
var kmlUrl = 'http://.../polygon-simple.kml';
var kmlOptions = {
suppressInfoWindows: false,
preserveViewport: true
};
var kmlLayer = new window.google.maps.KmlLayer(kmlUrl, kmlOptions);
Map オブジェクトを含むページはホスティング会社によって提供され、独自の jQuery ウィジェットを使用してオブジェクトを生成します。html-body 内に JavaScript を追加できます (マップの「サーバー側」の作成も行われます)。
使用されている JS ファイルと CMS で追加された JS のソースを変更できないため、既存のオブジェクトに対処して次のようにする必要があります。
kmlLayer.set(obj.Map);
追加を適用して Map オブジェクトを更新します。しかし、明らかにうまくいきません。
私はウェブサイト全体をファイアバグし、jQuery ウィジェットによって生成された Map インスタンスを見つけようとしましたが、何もありませんでした。サイト上のすべてのオブジェクトをトラバースしましたが、何もありませんでした。
Google マップのコードを完全に自分で書くという選択肢はありません。なぜなら、非開発者のためにバックエンドでコードを構成可能にしておく必要があるからです。
問題はjQueryウィジェットの問題に向かっていると思います...よろしくお願いします!