单击标记会单击其下方的图层(Mapbox gl)
当我在地图上单击一个标记时,单击也会被标记下运行的轨迹的onclick侦听器注册。我怎样才能阻止这一切的发生?我希望单击仅由标记的onclick侦听器注册 标记的代码:单击标记会单击其下方的图层(Mapbox gl),mapbox,mapbox-gl,Mapbox,Mapbox Gl,当我在地图上单击一个标记时,单击也会被标记下运行的轨迹的onclick侦听器注册。我怎样才能阻止这一切的发生?我希望单击仅由标记的onclick侦听器注册 标记的代码: var el = document.createElement('div'); el.className = 'marker'; el.addEventListener('click', () => { //functions }) const marker = new
var el = document.createElement('div');
el.className = 'marker';
el.addEventListener('click', () => {
//functions
})
const marker = new mapboxgl.Marker(el)
.setLngLat([location.longitude, location.latitude])
.addTo(this.map);
图层的代码:
map.addLayer({
"id": "route",
"type": "line",
"source": {
"type": "geojson",
"data": path
},
"layout": {
"line-join": "round",
"line-cap": "round"
},
"paint": {
"line-color": "#888",
"line-width": 8
}
});
尝试捕获事件并停止其传播:
el.addEventListener('click', e => {
e.stopPropagation();
//functions
}, true);
谢谢你MeltedPenguin,这解决了问题!