4

クリック可能な Google マップ (円、多角形など) にオーバーレイを配置することはできますか? 現在、たとえば、クリック可能な円は常にマップからイベントを非表示にしているようです。

例: ここでは、円をクリックしたときに両方のクリック ハンドラーが起動するようにします: http://jsfiddle.net/tW9SE/

var circle = new google.maps.Circle({
    map: map,
    center: center,
    radius: 100000,
    clickable: true
});

google.maps.event.addListener(map, "click", function(){
    alert("Map clicked");
});

google.maps.event.addListener(circle, "click", function(){
    alert("Circle clicked");
});

clickable=false の設定を除いて、イベントの伝播を許可するオーバーレイのプロパティが見つからないため、オーバーレイ自体のイベント ハンドラーを無効にします。

4

1 に答える 1

8

自分でクリックをトリガーするだけです:

google.maps.event.addListener(circle, "click", function(){
    alert("Circle clicked");
    google.maps.event.trigger(map, 'click', null);
});

詳細については、Google マップでのプログラムによるクリックのトリガーに関するMarcelo の回答を参照してください。

于 2013-10-29T14:14:24.577 に答える