gpt4 book ai didi

javascript - 折叠具有独占层的 Leaflet GroupedLayerControl

转载 作者:太空宇宙 更新时间:2023-11-04 12:30:41 25 4
gpt4 key购买 nike

Leaflet 支持的插件 Leaflet.GroupedLayerControl 现在支持独占分组层(通过类似于 baselayer 功能的单选按钮)。

但是,由于独占分组层的实现,BootLeaf 中的 isCollapsed 调用在调用独占层组时不再按预期执行。如果未调用,基础层和分组层仍会按预期执行,但是一旦将独占分组层添加到代码中就会出现问题。

如果窗口 <= 767px,代码要求分组图层控件折叠,否则如果窗口更大以完整显示分组图层控件:

       if (document.body.clientWidth <= 767) {
var isCollapsed = true;
} else {
var isCollapsed = false;
}


var layerControl = L.control.groupedLayers(baseLayers, groupedOverlays, options, {
collapsed: isCollapsed
}).addTo(map);

根据我最初的尝试和错误,似乎无法修改现有更改以使分组图层控件在宽度超过 767 像素的窗口中打开,并且 Leaflet.GroupedLayerControl 中唯一的代码更改包括基本的独占组代码。我猜需要额外的代码来确保独占层包含在分组层控件中。

有关故障排除,请参阅: working JS fiddle WITHOUT exclusive layers non-working JS fiddle WITH exclusive layers

最佳答案

尝试将 collapsed: isCollapsed 移动到选项对象,如下所示:

var options = {exclusiveGroups: ["Landmarks"], collapsed: isCollapsed};

关于javascript - 折叠具有独占层的 Leaflet GroupedLayerControl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27681775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com