javascript - Leaflet:隐藏/显示动态插入 map 中的标记

标签 javascript jquery class leaflet show-hide

我像这样插入 map 点:

function getPoints() {
  $.getJSON("get_users.php", function (data) {
    for (var i = 0; i < data.length; i++) {
      var location = new L.LatLng(data[i].lat, data[i].lng);
      var name = data[i].name;
      var website = data[i].website;
      var teste = "teste" + website;

      var marker = new L.Marker(location, {
        icon: tree1
      });
      marker.bindPopup("<a onclick='info()' style='font-size:18px; font-style: italic; font-family:courier; cursor: pointer;'>" + name + "</a><p>" + city + "</p><p id='inf' style='display:none;'>" + website + "</p><p style='font-size:10px;'>" + location + "</p>", {maxWidth: '400'});
      users.addLayer(marker);
    }
  }).complete(function() {
    if (firstLoad == true) {
      map.fitBounds(users.getBounds());
      firstLoad = false;
    };
  });
}

我希望用户只能看到标记,例如“foo”类,使用 javascript 隐藏没有该类的点。

我的问题是我无法为标记分配一个类..我已经尝试过:

使用 JQuery:$(marker._icon).addClass(foo)$(marker).addClass('foo')

DomUtil: DomUtil.addClass(marker, 'foo') , marker = L.DomUtil.addClass(marker, 'foo')

我在声明类时做错了什么吗?请纠正我!

最佳答案

您可以使用标记创建一个 LayerGroup 数组,然后使用子数组,您可以仅放置您想要显示的标记,并在需要时删除和添加

关于javascript - Leaflet:隐藏/显示动态插入 map 中的标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44850051/

相关文章:

jquery - 在另一个页面上时在链接上处于事件状态

javascript - 我如何在我的 Js 查询中定义 $

c# - 避免从基类继承所有东西

c++ - 从C++中的2个不同线程访问属于同一对象的不同数据成员

java - 面向对象的Java : External method calling with variable reference

javascript - 创建 Instagram API 地理订阅时出现 CORS 问题

javascript - 如何更改 Typescript 类的实例中的值?

javascript - 将数据存储到系统时 Electron 应用程序崩溃(应用程序退出代码 3221225477)

javascript - 用户登录后如何调用socket.io授权?

javascript - 如何使用html和css填充空白