我在地图上有一个标记,并且在每个标记上都有鼠标输入事件侦听器,该事件侦听器将mapbox gl弹出窗口的可见性触发为true。弹出内容是可单击的,并且具有一定的作用。但是,当我将鼠标移到弹出窗口顶部时,它会关闭。如果用户将鼠标光标停留在弹出框内容或标记上,我们可以在地图上保持标记可见吗?
const popupOptions = {
closeButton: false,
closeOnClick: false,
className: 'popupPreview',
offset: 25
};
const previewPopup= new Popup(popupOptions);
let Marker = document.createElement("button");
Marker.className = "Marker";
Marker.addEventListner('mouseenter',()=>{
previewPopup
.setLngLat(feature.geometry.coordinates)
.setDOMContent(placeholder)
.addTo(map);
})
Marker.addEventListner('mouseout',()=>{
previewPopup.remove();
})
只要用户将光标停留在弹出框或标记上,我就需要保持该弹出框为打开状态。但是,由于将鼠标移出事件与标记相关联,因此当用户将鼠标悬停在标记上时,弹出窗口将关闭。