您可以将图层添加到地图而不将其添加到控件。
查看您的 Fireflies 应用程序,如果您想从图层控件中删除 states 图层,同时仍将其显示在地图上,只需从您的叠加对象中删除 states 键/val。
您已经使用以下内容将州图层添加到地图中
var wmsstates = L.tileLayer.wms("http://jomdev.clemson.edu:8080/geoserver/it.geosolutions/wms", {
layers: 'it.geosolutions:USA_States',
format: 'image/png',
transparent: true,
version: '1.1.0',
attribution: "usastates"
});
wmsstates.addTo(map);
此时它已被添加到地图中。所以现在你要做的就是不要将它添加到图层控件中。
所以,而不是这个
var overlays = {
"Counties": wmscounty,
"States": wmsstates,
"Fireflies": geojsonFirefly
};
layersControl = new L.Control.Layers(baseLayers, overlays, {
collapsed: false,
id: 'irfancontrols'
});
使用这个
var overlays = {
"Counties": wmscounty
"Fireflies": geojsonFirefly
};
layersControl = new L.Control.Layers(baseLayers, overlays, {
collapsed: false,
id: 'irfancontrols'
});
由于 States 图层不再是叠加层,它可能隐藏在底图下方。要解决此问题,您需要致电 bringToFront
wmsstates.bringToFront();
BTW 看起来很棒的项目。 :)