Saltar al contenido

Cerrar todas las ventanas de información en la API de Google Maps v3

Solución:

infowindow es una variable local y la ventana no está disponible en el momento de cerrar ()

var latlng = new google.maps.LatLng(-34.397, 150.644);
var infowindow = null;

...

google.maps.event.addListener(marker, 'click', function() {
    if (infowindow) {
        infowindow.close();
    }
    infowindow = new google.maps.InfoWindow();
    ...
});
...

Declarar variables globales:

var mapOptions;
var map;
var infowindow;
var marker;
var contentString;
var image;

En intialize usa el mapa addEvent método:

google.maps.event.addListener(map, 'click', function() {
    if (infowindow) {
        infowindow.close();
    }
});

Para bucles que crean infowindows dinámicamente, declare un variable global

var openwindow;

y luego en el addListenerllamada de función (que está dentro del bucle):

google.maps.event.addListener(marker<?php echo $id; ?>, 'click', function() {
if(openwindow){
    eval(openwindow).close();
}
openwindow="myInfoWindow<?php echo $id; ?>";
myInfoWindow<?php echo $id; ?>.open(map, marker<?php echo $id; ?>);
});
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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