leaflet - 使用 Leaflet.js,如何遍历集群中的标记?

标签 leaflet markerclusterer

我们有一张 map ,在某个缩放级别,我们开始对标记进行聚类。

现在我希望能够删除某些标记。我可以删除不参与集群的标记,但集群中的标记不会被删除,因为代码不会遍历它们。

我会发布代码,但它无处不在,而且非常具体。

我可以执行以下操作;

$.each(MAP._layers, function (i, layer) {
    if (layer.feature) {
        var marker = LIGHTWEIGHT_BUILDING_MAPPING[layer.feature.id];
        MAP.removeLayer(marker);
    }
});

并且所有可见标记都被删除,但不会删除集群中的标记。有什么想法吗?

最佳答案

您无法遍历 map 或集群中的标记。

创建一个数组,在创建标记时在其中推送标记。

遍历你的数组

当您必须删除标记时,请使用

if(cluster.hasLayer(marker) cluster.removeLayer(marker);
if(map.hasLayer(marker) map.removeLayer(marker);
// remove marker from array (easier with a jQuery Array)

关于leaflet - 使用 Leaflet.js,如何遍历集群中的标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24772022/

相关文章:

r - Shiny 的传单easyPrint插件

javascript - Angular 6 检测图形变化

r - 将生成的多边形网格绘制到传单上的问题

具有多层的 Leaflet Clustering(使用 MarkerCluster.LayerSupport?)

android-我如何在 "Android"的谷歌地图中实现集群管理器时获得确切的数字请给我正确的答案,如果有人有...?

google-maps - Google map 无法在 https ://中工作

php - 将点均匀分布在 map 上的矩形上(调试)

javascript - 获取Leaflet上坐标的方法

javascript - 标记簇 - 传单 - 无法正常工作

javascript - Google map 标记簇总和值