宣传单:按ID删除层不起作用

时间:2016-08-11 11:10:24

标签: leaflet

我正在尝试从地图中删除元素: 工作代码:

var x = L.imageOverlay(fullURL, xbounds).addTo(Window.map);
Window.map.removeLayer(x);

不要工作:

var x = L.imageOverlay(fullURL, xbounds).addTo(Window.map);
Window.map.removeLayer(1);

docs它有按ID删除元素的方法

1 个答案:

答案 0 :(得分:4)

实际上,map.removeLayer()只接受一个图层(如第一个代码中所示)。

layerGroup.removeLayer()也可以接受身份证。

这个" ID"由Leaflet自动定义,您可以使用L.stamp(layer)检索它。

var layerGroup = L.layerGroup().addTo(map)
var x = L.marker(coordinates).addTo(layerGroup);
var x_id = L.stamp(x); // Retrieve the x layer ID
layerGroup.removeLayer(x_id);

演示:https://jsfiddle.net/3v7hd2vx/65/