Verwenden Sie einfach this Hinweis. Es entfernt das L.control-Element aus dem Kartencontainer und fügt es einem neuen übergeordneten Element hinzu. Sie können dies für die Seitenleiste direkt tun.
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);
Für mich ist diese Lösung funktionierte gut.
Ja, es ist möglich Ofc, aber Sie müssten Ihre eigenen Leaflet-Layer-Steuerelement erstellen und die Schicht von dort zu tun, gibt es keine Integration mit dem Plugin, nur um es in der Seitenleiste verschieben. –
Danke! Ich werde es versuchen. – Heather