javascript - 如何使用 Leaflet 中的自定义控件切换可点击标记属性?

标签 javascript jquery maps leaflet

正如我所看到的,标记不包含更改可点击属性(true/false)的方法。在创建所有标记后,我需要多次更改此属性(我知道我可以基于旧标记创建一个新标记,但这确实是开销,我想避免它)这次我尝试了此方法处理我的自定义按钮上的 onclick 事件:

function makeMarkersClickable() {
  for (var id in myMarkers) {
    var marker = myMarkers[id];
    marker.options.clickable = true;
    marker.clickable = true;
  }
}

显然这不起作用。似乎应该有一种方法来更新整个 map 或类似的方法来解决这个问题。

最佳答案

此问题有两种解决方案:

  • “我知道我可以根据旧标记创建一个新标记,但这确实是开销,我想避免它”:您会这样做。这是更好的解决方案,您不应该过早地优化它。不可设置的选项之所以如此是有原因的。
  • 始终将 clickable 设置为 trueadd and remove事件监听器。

关于javascript - 如何使用 Leaflet 中的自定义控件切换可点击标记属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26845826/

相关文章:

ios - 缓存的图 block 不显示 - Mapbox IOS SDK

java - 如何从 Android 中的普通 Activity 启动 MapActivity

javascript - 如何检测 DOM 中的 jquery 元素?

javascript - Vue表格实时更新

java - 将 jquery-ajax 与 play 2.0 框架结合使用

javascript - 可嵌套/可排序的序列化列表,无需从列表中删除原始项目

jquery - 强制缩略图大小保持不变,但只改变个人资料图像

ios - 如何在没有互联网连接的情况下获取经纬度

javascript - 使用变异观察器查找新出现的 DOM 类?

javascript - 如何限制图片上传大小小于 2mb?