javascript - 制作新圆标记时删除圆标记

标签 javascript html leaflet

我希望在用户点击时创建新的 circleMarker 时删除最后一个 circleMarker。

        app.initialize();

        var count = 0;

        var location;
        map.on('click', function(e){
            if (count == 1){
                map.removeLayer(location);
            }else{
                count = 1;
            }
            var cords = String(e.latlng);
            cords = cords.match(/\(([^)]+)\)/)[1];
            lat = cords.substring(0, cords.search(","));
            lng = cords.substring(cords.search(",")+1);
            location = new L.circleMarker([lat, lng], {radius:100,});
            map.addLayer(location);


        });

这是我到目前为止的代码,但每当我点击时,我都会得到 ERR_FILE_NOT_FOUND。

提前致谢,埃德。

最佳答案

如果我很清楚你想做什么,我想你可能把代码弄得太复杂了。编写如下代码就足够了:

 var location = new L.circleMarker();

 map.on('click', function(e) {
        map.removeLayer(location);
        location = new L.circleMarker(e.latlng, {radius:10,});
    map.addLayer(location);
 });

请查看 fiddle ,看看这是否是您想要的:https://jsfiddle.net/vaillant/ch4qb28x/

关于javascript - 制作新圆标记时删除圆标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39805165/

相关文章:

javascript - 使用 JavaScript 或 jQuery 切换 CSS 根变量?

javascript - Canvas DrawImage() 质量差

c# - Modal PopUp Extender 中的 GridView ?

javascript - 使用云中保存草稿功能将文本区域转换为文件

onclick - 单击更改(和更改回)传单图标

r - 使用 sf 列调整 Leaflet (R) 中的边界

javascript - 图片查看器 JavaScript

javascript - knockout : how can I make the input value added to a list also observable

javascript - 将 geojson 数据导入立交桥 turbo 生成的传单 map

html - 列表未按预期水平显示