Ciao a tutti, scrivo perchè ho un problema con gli infowindow di google map.
Ho una mappa con diversi marker, la cui lng e lat vengono recuperati tramite JSON. Ho anche un Listner che al click su un marker mi apre l'infowindow, ma vorrei che al click su un'altro marker si chiudesse l'infowindow relativo al precedente marker.
Per ora non ho avuto esiti positivi, gli infowindow rimangono aperti.....il mio codice è questo:
Ho inserito anche il metodo close() sperando che mettendolo la mi chiudesse quello precedente, ma niente.
Qualcuno ha idea di come possa fare? o dove sbaglio?
Ringrazio in anticipo
Stefania:byebye:
Ho una mappa con diversi marker, la cui lng e lat vengono recuperati tramite JSON. Ho anche un Listner che al click su un marker mi apre l'infowindow, ma vorrei che al click su un'altro marker si chiudesse l'infowindow relativo al precedente marker.
Per ora non ho avuto esiti positivi, gli infowindow rimangono aperti.....il mio codice è questo:
Codice:
geocoder = new google.maps.Geocoder();
var mapOptions = {
center: new google.maps.LatLng(44.49423583832911, 11.346244544982937),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("mappa_locali"),mapOptions);
$.ajax({
type:'GET',
url:"locali.php"+urlz,
success:function(data){
var json = JSON.parse(data);
for (var i=0; i<json.length; i++) {
point = new google.maps.LatLng(json[i].latitudine,json[i].longitudine);
var infowindow = new google.maps.InfoWindow;
infowindow.close();
infowindow.setContent(json[i].nome_locale);
addMarker(point,infowindow);
}
}
})
}
function addMarkerz(point,infowindow) {
marker = new google.maps.Marker({
position: point,
map: map
});
google.maps.event.addListener(marker,'mouseover',infoCallback(infowindow, marker));
markers.push(marker);
infos.push(infowindow);
}
function infoCallback(infowindow, marker) {
return function() {
infowindow.close();
infowindow.open(map, marker);
};
}
Ho inserito anche il metodo close() sperando che mettendolo la mi chiudesse quello precedente, ma niente.
Qualcuno ha idea di come possa fare? o dove sbaglio?
Ringrazio in anticipo
Stefania:byebye: