我的markerCluster 与InfoBubbles(gmaps v3 的实用程序)一起工作得很好。
它看起来像这样:
最后一点改进是如果标记已经聚集,则使 infoBubbles 消失。您可以在图像中看到 (3),并且您会看到一些幻影 infoBubbles 漂浮在附近,但它们下方没有标记。
代码说:
infoBubble[i] = new InfoBubble({
content: '<div id="msg" class="map-text" style="font-size:13px">'+res[i].job.start_time+" -"+res[i].job.end_time+'</div>', hideCloseButton: true,
padding: 2,
disableAutoPan: true,
});
infoBubble[i].open(map,marker);
我的想法是将最后一行 infoBubble[i] 包装到一个 if 块中,该块表示“如果标记,打开”的效果,它是标记或集群。
我只是想不出描述这种情况的正确语法。有任何想法吗?
更新
标记聚类器非常简单:
var markerCluster = new MarkerClusterer(map, markers, {
minimumClusterSize: 3,
});
我认为答案是说“如果 infoBubble grid > 60, infoBubble.open”k
60 是标记聚类器的默认网格大小,在此边界内是热标记出现而标记本身消失的时间。因此,我可以将相同的逻辑应用于 infoBubbles 自己“假装”他们的消失是有道理的。
但是当我放大和缩小以重新编写地图时,我需要一个触发器(我想我今天就这样做了......)