Saltar al contenido

Cómo abrir el menú emergente con el botón derecho del ratón en el folleto

Esta es la respuesta más válida que te podemos compartir, pero mírala detenidamente y analiza si es compatible a tu trabajo.

Solución:

no estás abriendo la ventana emergente, solo la estás creando, prueba

var popup = L.popup().setContent('

Hello world!
This is a nice popup.

');

esto crea una ventana emergente, luego debe abrirla con un clic derecho, el segundo argumento para ‘on’ solo acepta una función, que se ejecutará con el primer parámetro como evento, en otras palabras, la función no puede terminar entre paréntesis, generalmente es más fácil envolver lo que desea hacer en una función anónima como se muestra a continuación.

map.on('contextmenu',function()
    popup.openOn(map);
);

también podrías hacer

map.openPopup(popup);

cualquiera es equivalente. asegúrese de evitar bindPopup porque eso supone que desea usar clics izquierdos regulares.

Editar: entonces, para que se vea más como un menú, necesita usar una biblioteca para crear un menú emergente como uno de estos

map.on('contextmenu',function(e)
    plugin run!
);

Abre una nueva ventana emergente al hacer clic derecho, no olvide establecer la coordenada donde se debe colocar la ventana emergente llamando establecerLatLng función, de lo contrario obtendrá el siguiente error: leaflet.js: 5 TypeError no detectado: no se puede leer la propiedad ‘lat’ de undefined en Object.project

map.on('contextmenu',(e) => 
  L.popup()
  .setLatLng(e.latlng)
  .setContent('
Hello

')
.addTo(map)
.openOn(map);
);

Tienes la opción de corroborar nuestra faena fijando un comentario o puntuándolo te damos la bienvenida.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *