Sono occupato con uno script che creerà una tela google maps sul mio sito Web, con più marcatori. Voglio che quando fai clic su un marker, si apra una finestra di apertura. L'ho fatto e il codice è al momento:Chiudi tutte le infowindows nell'API di Google Maps v3
var latlng = new google.maps.LatLng(-34.397, 150.644);
var myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
function addMarker(map, address, title) {
geocoder = new google.maps.Geocoder();
geocoder.geocode({ 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
position: results[0].geometry.location,
map: map,
title:title
});
google.maps.event.addListener(marker, 'click', function() {
var infowindow = new google.maps.InfoWindow();
infowindow.setContent('<strong>'+title + '</strong><br />' + address);
infowindow.open(map, marker);
});
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
addMarker(map, 'Address', 'Title');
addMarker(map, 'Address', 'Title');
Questo funziona al 100%. Ma ora lo voglio quando una finestra aperta è aperta, e vuoi aprire la seconda, la prima si chiude automaticamente. Ma non ho trovato un modo per farlo. infowindow.close(); non aiuterà Qualcuno ha un esempio o una soluzione a questo problema?
Grazie per questo. Ho cambiato il mio codice dall'avere più InfoWindows per avere solo uno che viene chiuso/aperto su ogni marker.click. Funziona come un fascino. – William
@William, hai qualche possibilità di pubblicare un frammento di codice per quello che hai fatto e condividerlo qui? – Carl
@Carl vedere la modifica sopra. Speriamo che questo aiuti. – William