将Leaflet图层控件添加到侧边栏

时间:2017-01-05 01:18:23

标签: javascript leaflet sidebar

我正在使用Leaflet sidebar V2插件,我想知道是否可以将小册子图层控制菜单放入侧边栏?任何帮助是极大的赞赏!谢谢!

1 个答案:

答案 0 :(得分:1)

只需使用this提示即可。它从地图容器中删除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);

对我来说,这个解决方案效果很好。