var map, clusterLayer;
function GetMap() {
map = new Microsoft.Maps.Map('#myMap',{
credentials: 'My Key Here',
zoom: 3
});
Microsoft.Maps.loadModule("Microsoft.Maps.Clustering", function () {
//Generate 3000 random pushpins in the map view.
var pins = Microsoft.Maps.TestDataGenerator.getPushpins(3000, map.getBounds());
//Create a ClusterLayer with options and add it to the map.
clusterLayer = new Microsoft.Maps.ClusterLayer(pins, {
clusteredPinCallback: createCustomClusteredPin,
gridSize: 80
});
map.layers.insert(clusterLayer);
});
}
function removeEverything() {
// None of the following functions seem to work
//map.entities.clear() ;
//map.layers.clear() ;
map.layers.remove(clusterLayer) ;
}
function createCustomClusteredPin(){
// Some Decoration
}

<html>
<head>
<title></title>
<meta charset="utf-8" />
<script type='text/javascript'
src='http://www.bing.com/api/maps/mapcontrol?callback=GetMap' async defer></script>
</head>
<body>
<div id="myMap" style="position:relative;width:600px;height:400px;"></div>
</body>
</html>
&#13;
我在Bing Map上有一个使用JavaScript API生成的图钉集群层。我创建了一个聚集的图钉层并将其添加到地图中。问题是,一旦添加了图钉,我就无法从地图中删除图钉。我尝试了API的许多功能,但似乎没有任何作用。以上是我的代码。理想情况下,我还想要一个功能来隐藏地图中的 clusterLayer ,并在按钮点击时显示它。为此,我使用了 clusterLayer.setOptions({visible:false}),但这也不起作用。我错过了什么?任何帮助深表感谢。
PS:我从控制台调用 removeEverything()函数。
答案 0 :(得分:0)
上周,实验分支增加了清除聚类层的功能。将“&amp; branch = experimental”添加到地图脚本网址。然后,您可以通过执行以下操作清除群集层:
clusterLayer.clear();
答案 1 :(得分:0)
我刚做了一个
map.layers.clear();
已授予 - 我只有一个群集层显示 我将假设这将删除x个层 - 在这种情况下 - 您最终将必须通过索引来完成。