从可点击的Google地图叠加层传播鼠标事件

时间:2013-10-29 14:10:06

标签: javascript google-maps events

是否可以在可以点击的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,从而禁用覆盖本身上的事件处理程序。

1 个答案:

答案 0 :(得分:6)

只需自己触发点击:

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

Marcelo's answer中有关以编程方式触发Google地图点击的详细信息。