¿Alguien sabe cómo suprimir la panorámica cuando hace clic y arrastra sobre la parte superior de un cuadro div incrustado dentro del mapa?
Por ejemplo , aquí , cuando hace clic y arrastra sobre la parte superior de la leyenda, el mapa se arrastra con usted. Quiero suprimir esa función. Soy consciente de esta técnica, pero quiero saber si esta es la única manera:
map.dragging.disable();

Respuestas:
Usando el ejemplo del sitio web de Leaflet, observe dónde
L.Controlse instancia el objeto comoinfo; Este es el<div>cuadro en la esquina superior derecha asociado con la interacción de desplazamiento del mapa. Aquí es donde se define aindex.htmlpartir del ejemplo del folleto:Para deshabilitar el arrastre cuando el cursor de un usuario está dentro de este
<div>cuadro , agregue un detector de eventos alHTMLElement(un<div>elemento) que contiene elL.Controlobjeto:Recuerde que
mapse definió como laL.Mapinstancia anterior.fuente
leaflet-controlelemento está contenido por elleaflet-containerelemento y este último está recibiendo los eventos de puntero que activan el zoom y la panorámica.<div>de interés es un hijo delleaflet-controlque está dentroleaflet-container. Los eventos son recibidos por el padre (leaflet-container) antes que el niño (leaflet-control).Una solución alternativa a esto es detener la propagación de eventos con JavaScript (como se hace para los controles de folleto, por ejemplo, botones de zoom):
fuente