我正在使用Leaflet sidebar V2插件,并想知道是否可以将leaflet图层控制菜单放入侧边栏中?非常感谢您的帮助!谢谢!
只需使用这个提示。它将L.control元素从地图容器中移除并添加到新的父元素中。你可以直接为侧边栏做同样的操作。
HTML:
<div id="sidebar" class="sidebar collapsed">
<div class="sidebar-tabs">
<ul role="tablist">
<li>....</li>
<li>....</li>
</ul>
</div>
<div class="sidebar-content">
<div class="sidebar-pane" id="">
<h1 class="sidebar-header">...</h1>
<div id="example"> <!--Here the layer control menu will be added--></div>
</div>
</div>
JS:
var layer = L.control.layers(baseMaps, overlayMaps).addTo(map);
var htmlObject = layer.getContainer();
var a = document.getElementById('example')
function setParent(el, newParent){
newParent.appendChild(el);
}
setParent(htmlObject, a);
对我来说,这个解决方案很有效。