Leaflet.js-使用预先存在的标记在特定键上添加过滤器

时间:2018-08-30 13:23:01

标签: javascript leaflet

回到我先前的问题:Leaflet.js - Create layers and add markers depending on geojson category data?(我没有明确的答案来解决我的问题)

我用以下代码找到了这个JSFiddle http://jsfiddle.net/1Lshjdxq/19/

// Create the map
var map = L.map('map');

// Set up the OSM layer
var osmTiles = L.tileLayer(
    'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
    maxZoom: 18
}).addTo(map);
var baseLayer = {
    "Open Street Map": osmTiles
};
var featureLayer = new L.geoJson(data, {
    onEachFeature: function (feature, layer) {
        var popupContent = [];
        // render properties
        for (var key in feature.properties) {
            popupContent.push(key + ": " + feature.properties[key]);
        }
        layer.bindPopup(popupContent.join("<br/>"));
    }}).addTo(map);
map.fitBounds(featureLayer.getBounds()).zoomOut(2);
var overlay = {
    "Features": featureLayer
}
var layerControl = new L.control.layers(baseLayer, overlay, {
    collapsed: false
});
map.addControl(layerControl);

并且想知道是否可以在Key“ CATEGORY”上放置一个过滤器,以便能够使用layerControl显示/隐藏链接到“ CATEGORY”的标记。

最终结果是根据json中“ CATEGORY”键的值显示或隐藏标记。不必使用controlLayer。

0 个答案:

没有答案