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);
});

Marcelo 的答案中有关以编程方式触发 Google 地图点击的更多信息。

于 2013-10-29T14:14:24.577 回答