我环顾四周,看到了很多关于如何显示/隐藏层的信息。这很酷,但是由于我可以向GeoJSON特性添加任意属性,所以我希望能够相应地过滤它们。
例如,如果我具有以下特性的特性1、2和3:
我如何按大小过滤它们?或者是颜色还是味道?
发布于 2015-02-26 21:54:55
请看利用GeoJSON与传单- JavaScript库进行交互式地图。
是的,您可以,只需添加一个过滤器函数,如:
L.geoJson(someFeatures, {
filter: function(feature, layer) {
return feature.properties.show_on_map;
}
}).addTo(map);
或者,如果您想要动态更新,在另一个问题中有一个很好的答案:传单:更新GeoJson过滤器?
发布于 2016-05-05 14:23:05
我在Leaflet.tagFilterButton添加了通过标记过滤标记的插件。
如果将tags
选项添加到标记中,则可以根据标记/类别对它们进行筛选。例如:
L.geoJson(jsonObject, {
pointToLayer: function(feature, latlng) {
L.marker(latlng, {
tags: ['small', 'red', 'sweet']
});
}
}).addTo( map );
L.control.tagFilterButton({
data: ['small', 'red', 'sweet']
}).addTo( map );
https://stackoverflow.com/questions/21974597
复制相似问题