LeafletJS - 图层的默认选择

时间:2017-03-30 08:48:54

标签: javascript leaflet

我正在使用leaflet-groupedlayercontrol将我的分组图层添加到地图中,我遇到了问题:

取消选择所有图层,但我希望默认情况下全部选择。我使用的是复选框,而不是单选按钮。

var groupedOverlays = {
    "Select": {}
};

groupedOverlays["Select"]["Group 1"] = groups[0];
groupedOverlays["Select"]["Group 2"] = groups[1];
groupedOverlays["Select"]["Group 3"] = groups[2];

// Use the custom grouped layer control, not "L.control.layers"
L.control.groupedLayers(null, groupedOverlays, {collapsed:false}).addTo(map);

我尝试用JS 选择它们,但没有用。

如果您知道LeafletJS的解决方案,但不知道该特定插件的解决方案,也可以。

1 个答案:

答案 0 :(得分:6)

内置L.Control.Layers中是否选中了“传单”图层取决于图层是否添加到地图

e.g。这将显示L.Control.Layers并关闭复选框:

L.control.layers({}, { 
    Foo: L.marker([0,0]) 
}).addTo(map)

...虽然这将显示以下复选框:

L.control.layers({}, { 
    Foo: L.marker([0,0]).addTo(map)
}).addTo(map)

我希望GroupedLayers控件的行为类似。只需仔细检查是否将图层添加到地图中。另请注意,无论何时以任何方式在地图上添加/删除图层,复选框的状态都会更新。