saber - API 3 de Google Maps: obtener coordenadas del clic derecho
mapa con coordenadas geográficas (2)
Puede crear un objeto InfoWindow ( documentación de clase aquí ) y adjuntarle un controlador de eventos rightclick
que lo rellenará con latitud y longitud de la ubicación clicada en el mapa.
function initMap() {
var myOptions = {
zoom: 6,
center: new google.maps.LatLng(-33.8688, 151.2093)
},
map = new google.maps.Map(document.getElementById(''map-canvas''), myOptions),
marker = new google.maps.Marker({
map: map,
}),
infowindow = new google.maps.InfoWindow;
map.addListener(''rightclick'', function(e) {
map.setCenter(e.latLng);
marker.setPosition(e.latLng);
infowindow.setContent("Latitude: " + e.latLng.lat() +
"<br>" + "Longitude: " + e.latLng.lng());
infowindow.open(map, marker);
});
}
html,
body {
height: 100%;
}
#map-canvas {
height: 100%;
width: 100%;
}
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAIPPUQ0PSWMjTsgvIWRRcJv3LGfRzGmnA&callback=initMap" async defer></script>
<div id="map-canvas"></div>
Tengo 2 cuadros de texto para lat y lon cuando un usuario ingresa un nuevo registro a la base de datos.
Tengo una vista previa en vivo de Google Maps que funciona muy bien, ahora lo que quiero hacer es agregar un evento con el botón derecho en el mapa que rellena los cuadros de texto lat / lon con el coord en el que se hace clic.
¿Esto es posible?
Sé cómo agregar el detector de eventos y revisé los documentos de API, pero no vi nada que haga esto. Sé que puedes hacerlo en el mapa de Google en su sitio web.
google.maps.event.addListener(map, "rightclick", function(event) {
var lat = event.latLng.lat();
var lng = event.latLng.lng();
// populate yor box/field with lat, lng
alert("Lat=" + lat + "; Lng=" + lng);
});