EventListener用于标识google map api中的多个Circles

时间:2014-05-23 10:07:18

标签: javascript google-maps

我的代码就像这样

var cityCircle;
for (var city in citymap) {
    populationOptions = {
    strokeColor: '#FF0000',
    strokeOpacity: 0.8,
    strokeWeight: 2,
    fillColor: '#FF0000',
    fillOpacity: 0.35,
    clickable:true,
    map: map,
    center: citymap[city].center,
    radius:20000,
};
 cityCircle = new google.maps.Circle(populationOptions);
}

其中citymap是一个包含纬度和经度的数组

我得到的是在数组

中定义的纬度和经度上的大量圆圈

我想要做的是唯一标识点击哪个圈子?

1 个答案:

答案 0 :(得分:1)

您可以使用,例如:

获取该信息
    (function(cityCircle) {
        google.maps.event.addListener(cityCircle, 'click', function(evt) {
            console.log(evt.latLng.lat() + ':' + evt.latLng.lng());

            var circleCenter = cityCircle.getCenter();
            console.log(circleCenter.lat() + ':' + circleCenter.lng());
        })
    })(cityCircle)

从事件处理程序参数中,您可以获得点击,从点击的圈子中您可以获得中心和其他相关信息。

更新: example at jsbin