【问题标题】:Is it possible to exclude pins at zoom levels是否可以在缩放级别排除引脚
【发布时间】:2016-01-07 19:07:06
【问题描述】:

http://rich.littlebigfoot.org.uk/test7.html

我正在规划沿海岸路径(黄色)步行,并将添加更多步行和更多信息。但是,在当前缩放时,我想排除所有引脚并仅在缩放级别 11 时显示它们?

谢谢

丰富

【问题讨论】:

    标签: popup leaflet openstreetmap


    【解决方案1】:

    如果我理解正确,您想在某些低缩放级别(例如 [0 到 10])隐藏一些图层(图钉/标记和/或矢量/路径),然后以高缩放级别(例如 11及以上)?

    您可能会对地图"zoomend" event 上的attaching a callback 感兴趣,因此当后者发生变化时,回调可以根据当前地图缩放级别将您的图层删除或添加到地图中。

    例如:

    map.on("zoomend", showOrHideLayers);
    
    function showOrHideLayers() {
        if (map.getZoom() <= 10) {
            map.removeLayer(markers);
        } else {
            map.addLayer(markers);
        }
    }
    
    showOrHideLayers();
    

    演示:http://jsfiddle.net/ve2huzxw/116/


    编辑:

    如果您的目标是避免引脚(标记)重叠,您可能还对“聚类”功能感兴趣。

    查看可用的Leaflet clustering plugins

    最受欢迎的是Leaflet.markercluster (demo)。

    【讨论】:

    • 感谢您的回答。我也很高兴您添加了聚类元素。这非常有用,并回答了我的另一个问题。非常感谢。
    • 我不确定自己做错了什么,但我已将演示代码添加到新地图以测试代码,然后与原始地图集成,但出现灰屏。 rich.littlebigfoot.org.uk/test8.html 有什么想法吗?
    • 可能只需要删除涉及currentZoom的代码的最后一部分。这只是一个调试帮助。
    猜你喜欢
    • 2015-03-25
    • 1970-01-01
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 2018-01-18
    • 2012-04-27
    • 2013-03-01
    相关资源
    最近更新 更多