获得markerclusterer集群

时间:2013-07-19 11:22:55

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

我正在创建一个包含群集的地图,我想在其下显示一个群集列表。

为了获得集群,我试图从对象中检索它们。但它不像我预期的那样有效:

    // Initialize clusterer
    markerCluster = new MarkerClusterer(map, markers, clusterOptions);

    // this logs an empty array
    var clusters = markerCluster.clusters_;
    console.log(clusters);

    // This logs array of clusters 
    setTimeout(function(){
        var clusters = markerCluster.clusters_;
        console.log(clusters);
    }, 500)

所以我想弄清楚是否有onload事件或回调函数..

1 个答案:

答案 0 :(得分:2)

这取决于你正在使用的集群库,但基本上,MarkerClusterer类是OverlayView的扩展。

一旦实际添加了OverlayView(OverlayView.onAdd方法),就会完成群集。

您获得的第一个日志为空,表示尚未添加叠加层。据我所知,没有叠加添加的事件。

最佳解决方案是扩展MarkerCluster类,重载onAdd方法,发送事件,然后在相应的侦听器中添加标记。