Leaflet点击marker时如何获取自定义customValue属性中存储的名称信息
你可以通过点击事件对象的sourceTarget属性拿到对应的Marker实例,你在初始化时传入的自定义customValue字段会保存在Marker实例的options属性下,直接按路径取值即可。
修改后的changeMapLineColour函数示例:
function changeMapLineColour(e) { // 取到触发点击事件的Marker实例 const targetMarker = e.sourceTarget // 提取自定义的名称值 const markerName = targetMarker.options.customValue alert("hi. you clicked the marker at " + markerName); }
补充说明:如果你的场景里没有复杂的图层嵌套冒泡,用e.target.options.customValue也能拿到同样的结果,e.sourceTarget的兼容性更强,不会受事件冒泡影响,始终指向你绑定click事件的那个Marker对象。
内容的提问来源于stack exchange,提问作者tj26
相关产品推荐
相关产品推荐

