javascript - 检查传单 map 上的位置是否是标记

标签 javascript leaflet

我想确定某个纬度和经度是否已有标记

我在研究时发现的唯一方法是mymap.hasLayer(marker)

但是我不想也不能使用标记变量,因为我只有位置(经纬度)

我需要知道这一点,因为有些标记会重叠,我知道如何解决这个问题的唯一方法是检查该位置上是否存在标记,如果它进行了修改,则会向其添加信息

最佳答案

您可以迭代 map 上的图层,并检查每个标记。

var targeLatLng = L.latLng(lat, lng);

map.eachLayer(function(layer) {
        if (layer instanceof L.Marker) {
            if (layer.getLatLng() === targetLatLng) {


            // We found a marker at the target lat, lng

         }
    });

您可能想使用layer.getLatLng().distanceTo(targetLatLng) < something如果您需要最小距离而不是完全相等。

关于javascript - 检查传单 map 上的位置是否是标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58681396/

相关文章:

javascript - 获取与选中的输入框处于同一级别的元素

javascript - Circle Pack & Force 布局在同一页上?

javascript - 将现有传单多边形添加到现有传单层

javascript - 在传单中编辑多边形后如何获取修改后的和原始的geojson点?

javascript - 传单:使用分组图层控件插件扩展自定义控件

css - 添加时淡入传单标记

javascript - 将变量传递到一页并在组合框中查找

javascript - 如何比较两个MySql数据库

javascript - listener() 在 Redux store 中做了什么?

r - 单击 map 后,ObserveEvent 不会打印出图层 ID