有没有一种方法可以向传单l.control.layers添加“删除控件”?

时间:2019-11-01 23:10:37

标签: leaflet controls layer

我有一些图块层,希望用户能够从数据库搜索结果中添加它们并动态删除。添加工作正常。我知道我可以跟踪图层并使用按钮或其他方法删除图层,但是我认为在控件本身的标签旁边放置一个“ x”会更直观。

我尝试仅在htmlLegend的'elements'html中使用javascript,但无济于事...这将是'allowRemove'的不错选择。有什么想法吗?

    function addMapLayer(layerID, layerName){
        layerLink = "https://tilesblahblah.com/arcgis/rest/services/" + layerID + "/MapServer";
        var layerInstance =  L.esri.tiledMapLayer({
            url: layerLink,
            transparent: true,
            opacity: 0.7,
            minZoom: 8,
            maxZoom: 30
        });     

        controlLayers.addOverlay(layerInstance, layerName);

        htmlLegend.addLegend({
            name: layerName,
            layer: layerInstance,
            elements: [{
                html: '<div class="hexagon" onclick="controlLayers.removeLayer(layerInstance);"></div>'
            }]
        });
        layerInstance.addTo(mapR);  
    }

0 个答案:

没有答案