El marcador del folleto no es arrastrable, incluso si Draggable = True -- javascript campo con drag-and-drop campo con leaflet camp Relacionados El problema

Leaflet marker is not draggable even if draggable=true


10
vote

problema

Español

Estoy usando un mapa de folleto con marcadores .

Cuando el usuario hace clic en "Editar" en mi página, quiero que los marcadores arrastre. Si configuro la propiedad draggable en VERDADERO para cada marcador, no funciona.

Cuando creo un nuevo marcador y configuro la propiedad directamente desde el principio, funciona.

Original en ingles

I'm using a Leaflet map with markers.

When the user clicks "edit" on my page, I want to make the markers draggable. If I set the property draggable to true for each marker, it doesn't work.

When I create a new marker and set the property right from the beginning, it works.

        

Lista de respuestas

14
 
vote
vote
La mejor respuesta
 

Tienes que hacerlo así:

  marker.dragging.disable(); // marker.dragging.enable();   

Mi primer intento solo cambia una propiedad técnica pero no el comportamiento .

 

You gotta do it like this:

marker.dragging.disable(); // marker.dragging.enable(); 

My first attempt only changes a technical property but not the behavior.

 
 
     
     
2
 
vote

Motivado por @ MC0E Problema relativo a 'indefinido'. Aquí hay un ejemplo.

(basado en el código de hojas de hojas de hoja y Leafletjs Quick Start )

  1. Open wikimedia maps (que se basa en el marco en cuestión).
  2. Consola de navegador abierta ( Ctrl + j o ctrl + k ) para poner un marcador ( Necesito definir primero una variable). Utilice el código-1.

Code-1 en la consola:

  var markerLondon = L.marker()     .setLatLng([51.5, -0.09])     .bindPopup('Centre of London')     .addTo(map)     .openPopup();   
  1. Ahora tienes un marcador no dragable. Use el código-2 para que el marcador arrastra.

Code-2 en la consola:

  markerLondon.dragging.enable();   

Lectura adicional: Referencia de API de marcador .

PS: Una vez que Wikimedia comienza a usar otra cosa, puede probarlo con bigmap 2 (también basado en el mismo marco) creado para hacer imágenes estáticas OpenStreetMap.

 

Motivated by @mc0e problem concerning 'undefined'. Here is an example.

(Based on the code from Leafletjs.com and Leafletjs quick start)

  1. Open Wikimedia maps (which is based on the framework in question).
  2. Open browser console (Ctrl+j or Ctrl+k) to put a Marker (you will need to define a variable first). Use Code-1.

Code-1 in console:

var markerLondon = L.marker()     .setLatLng([51.5, -0.09])     .bindPopup('Centre of London')     .addTo(map)     .openPopup(); 
  1. Now you have a non-draggable marker. Use Code-2 to make the Marker draggable.

Code-2 in console:

markerLondon.dragging.enable(); 

Further reading: Marker API reference.

PS: Once Wikimedia starts using something else, you may test it with BigMap 2 (also based on the same framework) created for making static OpenStreetMap images.

 
 

Relacionados problema

3  ¿Cómo tener dos mundos en el folleto?  ( How to have two worlds in leaflet ) 
Tengo un problema con el folleto cuando llegue a tener un punto cerca W180. El problema es el mismo que este: https://github.com/leaflet/leaflet/sissues / 82...

1  Orden de clasificación de capas en el control de la capa de folleto  ( Sort order of layers in leaflet layer control ) 
He creado un mapa de folleto para mostrar algunos datos de GeoJson en capas verticales separadas. Funciona bien, excepto que el control de la capa enumerará...

1  Folleto Onpage Cargar OpenPopup para todos los marcadores  ( Leaflet onpage load openpopup for all markers ) 
Estoy implementando marcadores en tiempo real usando Foollet.js versión 0.7.7 y Feaplet-Realtime - V1.3.0. Está funcionando bien. Pero en la carga del mapa, n...

0  Cómo dibujar círculos alrededor de marcadores con el valor del radio especificado usando MAPBox.js  ( How to draw circles around markers with the specified radius value using mapbox ) 
Hola, quiero mostrar el valor de la cantidad alrededor del marcador con la ayuda de los círculos. Básicamente, si el círculo es más grande, entonces significa...

2  Evento del mouse abajo de Android Webview  ( Mouse down event from android webview ) 
Tengo un pedazo de código JavaScript que funciona con el evento del mouse en el mapa de folletos para arrastrar un círculo, funciona en las páginas web, no en...

2  PHP - Echo Un resultado de MySQL como GeoJson  ( Php echo a mysql result as geojson ) 
Tengo una tabla en un DB MySQL, que tiene un campo de geometría (polígono) Ahora puedo consultar el campo de la geometría y obtener un geojson como este: ...

7  Sin captura TypeError: no se puede leer la propiedad 'LAT' de INDEFINADORES cuando sean datos de Folleto con $ .Param ()  ( Uncaught typeerror cannot read property lat of undefined when serializing lea ) 
Me gustaría prefaciar esto: soy muy nuevo en JavaScript. Estoy tratando de publicar la ubicación del usuario y los límites del mapa con folleto y una llamada ...

1  Folleto "MaxBounds", problemas en un mapa no geográfico  ( Leaflet maxbounds woes on a non geo map ) 
Estoy usando folleto para mostrar un mapa no-geo : es decir, un "mapa de papel" de tamaño definido que se ha reducido en azulejos utilizando el software apro...

1  Añadir propiedades personalizadas al folleto / MAPBOX GeoJson Marker  ( Add custom properties to leaflet mapbox geojson marker ) 
Las dos funciones de relevancia están abajo. Quiero agregar propiedades personalizadas a los marcadores. Para ser específico, el ID de usuario del objeto Pr...

65  Marcador en folleto, haga clic en evento  ( Marker in leaflet click event ) 
var map = L.map('map'); var marker = L.marker([10.496093,-66.881935]).on('click', onClick); function onClick(e) {alert(e.latlng);} marker.addTo(map) Cuan...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos