0

我想用 getLatLng 提醒我标记的所有位置。

这也很好用。

我通过以下代码将标记放在地图上:

var marker = new L.Marker(e.latlng, {
        draggable:true,

        contextmenu: true,
          contextmenuItems: [{
             text: 'Marker entfernen',
              index: 0,
              callback: remove
            },{

              separator: true,
              index: 1
          }]
        });    
   map.addLayer(marker);

我通过这段代码得到了位置:

$( ".test" ).click(function() {
alert(marker.getLatLng());
});

所有添加标记位置都会保持警惕。

但是,如果我通过此代码删除标记:

map.removeLayer(marker);

已删除标记的位置仍显示在警报框中!

4

1 回答 1

1

的 Javascript 对象marker仍然存在,在您使用map.removeLayer(marker);. 为了快速修复,您可以marker = null;在将其从图层中删除后简单地添加。不过,您还必须在调用 alert 之前检查是否为 null。

于 2013-09-24T11:40:15.897 回答