をクリックして検出:私は地図上のKMLオーバーレイを表示していますGoogleマップでKML領域上
するvar K1 =新しいGGeoXml(URL)を、 map.addOverlay(k1);
その領域がクリックされたときに検出したいと考えています。これはうまくいきません:
GEvent.addListener(k1、 'click'、function(){alert( 'k1'をクリックした);});
アイデア?
をクリックして検出:私は地図上のKMLオーバーレイを表示していますGoogleマップでKML領域上
するvar K1 =新しいGGeoXml(URL)を、 map.addOverlay(k1);
その領域がクリックされたときに検出したいと考えています。これはうまくいきません:
GEvent.addListener(k1、 'click'、function(){alert( 'k1'をクリックした);});
アイデア?
私はあなたがV2 Maps APIを使用していると仮定しています。
ドキュメントを確認すると、GGeoXmlクラスは「クリック」イベントを発生させず、実装するインターフェイスもGOverlayはそのイベントを公開しません。したがって、あなたは理論的にそのイベントにバインドしていますが、決して引き起こされることはありません。
リスナーを存在させないイベントにバインドしています。GOverlayはイベントを発生させません。
クイックビューでは、GMap2のみがマウスイベント(おそらく他のクラスも)を発生させます。これにリスナーを追加して、イベントが発生したときにソースオブジェクトをチェックしようとしましたか?
var k1 = new GGeoXml(url);
map.addOverlay(k1);
GEvent.addListener(map, 'click', callback);
function (overlay, latlng) callback
{
if (overlay == k1) alert('you clicked on k1');
}
(EventListener docsを参照)
Google MapsのAPIは非常に柔軟ではありません。 KMLオーバーレイの柔軟性が低く、オーバーレイをクリックしたときに何をしたいのですか?