【问题标题】:Using leaflet.js, how do I iterate through markers in a cluster?使用leaflet.js,我如何遍历集群中的标记?
【发布时间】:2014-07-16 04:04:20
【问题描述】:

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

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

我会发布代码,但它到处都是而且非常具体。

我可以做到以下几点;

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

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

【问题讨论】:

    标签: leaflet markerclusterer


    【解决方案1】:

    您不能遍历地图或集群中的标记。

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

    遍历你的数组

    当你必须删除标记时,使用

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

    【讨论】:

      猜你喜欢
      • 2013-09-28
      • 1970-01-01
      • 2012-02-22
      • 2021-09-04
      • 2017-10-01
      • 2012-01-19
      • 2023-03-05
      • 1970-01-01
      • 2016-06-17
      相关资源
      最近更新 更多