如何删除从地图所有群集的图标(簇标记)?与建议tryed像:

谷歌地图API第3版:如何删除所有标记?

...但它并没有奏效。

您能帮助我如何做到这一点?

感谢你在前进!

<强> UPDATE(2010-11-23)

标记被存储在阵列

var markersClust = Array();

...并加入用(用PHP组合):

markersClust.push(marker_<?php echo $team["Team"]["id"]; ?>);

var markerClusterer = new MarkerClusterer(MyMap.map, markersClust, clusterOptions);

和它工作得很好。

但是,我无法从地图上删除他们,这使我...

tryed以除去标记(和我一样)与

for ( var i=0; i < markersClust.length; i++) {
    markersClust[i].setMap(null);
}
markersClust = []; 

但簇图标是STIL在地图上。

也我tryed之类的东西:

markerClusterer.clearMarkers();

和等

MyMap.preventDefault();
MyMap.stopPropagation();
MyMap.clearMarkers();

但是,再次,所述簇的图标仍然存在,在地图上。

还有什么做我必须做删除我的地图上的集群图标?请帮助...

有帮助吗?

解决方案

遍历每个标记和组标记的地图到零。将从地图中删除所述标记。

其他提示

这是做到这一点的正确方法:

// Unset all markers
var i = 0, l = markers.length;
for (i; i<l; i++) {
    markers[i].setMap(null)
}
markers = [];

// Clears all clusters and markers from the clusterer.
markerClusterer.clearMarkers();

演示: http://jsfiddle.net/HoffZ/gEzxx/

文档: https://googlemaps.github.io/js-标记聚类器/文档/的reference.html

我有同样的问题为好。我只一次初始化时说出我的MarkerClusterer固定它:

markerCluster = new MarkerClusterer(map);

这是我做的。我有很多的标记,但是当我切换到热图我想删除所有标记和聚类器。当我创建标记我将其添加到全局标记阵列

 markers.push(marker);

我定义clustere这样

markerCluster = new MarkerClusterer(map, markers);
markerCluster.setIgnoreHidden(true);

当我点击按钮以显示热图

$.each(markers, function(k, v){
    v.setVisible(false);
});
markerCluster.repaint();

repaint()被调用忽略隐藏它隐藏所有群集的图标。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top