Google Maps API v3 infowindow close event/callback?

Colin picture Colin · Jul 21, 2011 · Viewed 67k times · Source

I like to keep track of any and all infowindows that are open on my Google Maps interface (I store their names in an array), but I can't figure out how to remove them from my array when they are closed via the "x" in the upper right hand corner of each one.

Is there some sort of callback I can listen for? Or maybe I can do something like addListener("close", infowindow1, etc ?

Answer

Jorge picture Jorge · Jul 21, 2011

there's an event for infowindows call closeclick that can help you

var currentMark;
var infoWindow = new google.maps.InfoWindow({
            content: 'im an info windows'
        });
google.maps.event.addListener(marker, 'click', function () {
          infoWindow.open(map, this);
          currentMark = this;

});
google.maps.event.addListener(infoWindow,'closeclick',function(){
   currentMark.setMap(null); //removes the marker
   // then, remove the infowindows name from the array
});