如何使用MarkerCluster.js在Google地图上获取当前群集的标记

时间:2013-01-22 15:45:50

标签: javascript google-maps-api-3 google-maps-markers markerclusterer

我的情况是我有很多地理数据,其中很多都有相同的数据和数据。长。

我希望将MarkerCluster的zoomOnClick处理程序保持活动状态,但是当地图保持放大并获得最大缩放级别时,群集中相同的lat& long数据将不会分开(因为达到最大缩放级别为21) < - 这是有道理的。 所以,我想做的就是当地图达到最大缩放级别时,我点击群集标记,我不放大,我想弹出一个信息窗口来显示该群集中的所有标记信息。

我可以点击群集标记并立即弹出一个信息窗口(通过修改MarkerCluster.js),但我不知道如何在该群集标记中获取这些标记,现在,我只能获得所有标记返回...

有谁知道如何做到这一点或我应该如何修改js文件? 或者也许有人也有同样的情景?

感谢任何建议,谢谢。

1 个答案:

答案 0 :(得分:2)

要获取当前(单击的)群集,请访问传递给clusterclick - 回调的参数。

此参数的方法getMarkers()将返回一个数组,其中包含群集中的标记,循环遍历数组并收集所需数据。

注意:我不知道您使用的是哪个版本的markerclusterer.js,我的回答是this version
也无需修改此版本,您可以在不做任何修改的情况下访问所有要求的功能。

如何访问标记的简短示例:

google.maps.event.addListener(markerclustererObject,'clusterclick',
   function(clickedCluster){
   console.log(clickedCluster.getMarkers());
});