Quante volte abbiamo visto mappe di GMaps con uno o tanti marker i quali cliccati mostravano la famosa nuvoletta con delle informazioni scritte all’interno. Molto utile se oltre a voler indicare visivamente le coordinate di un punto vogliamo anche dare informazioni ulteriori sul luogo.
Abbiamo già visto come produrre ed inserire in un punto preciso della mappa un marker. Oggi vedremo come abbellirlo con del testo inserito nella famosa nuvoletta, che comparirà al click dell’utente sul marker.
Il tutto è abbastanza semplice e si ottiene facendo lavorare di pari passo l’oggetto GMarker, che ci restituisce il puntatore a mappa e la classe GEvent, aggiungendo un listener all’evento onClick del marker generato mostri la nuvola (openInfoWindowHtml). Sembra uno scioglilingua, ma leggendo il codice apparirà tutto più chiaro.
var map = null;
var geocoder = null;
var address = ‘97015 Italy’;
function initialize() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("gmaps"));
var geocoder = new GClientGeocoder();
if(document.getElementById(‘addr’).value != ”){
address = document.getElementById(‘addr’).value;
}
geocoder.getLatLng(address, function(point){
if(!point){
alert(‘Spiacente, indirizzo non trovato’);
}else{
var marker = new GMarker(point);
map.addOverlay(marker);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(‘Coordinate<br />’+point);
});
map.setCenter(point, 8);
}
});
map.setUIToDefault();
}
}
In questo caso, per semplicità, ho deciso di mostrare le coordinate LatLng del punto a cui il marker fa riferimento. E’ ovvio che avrei potuto scrivere la qualsiasi cosa, in semplice codice HTML.
Come sempre, una pagina per testare live quanto detto.
A proposito! Ieri viaggiavo in Google Earth e mi son messo a marcare con il segnalino tutti i siti di amici e parenti. Ad un tratto mi son posto una domanda: ma sto segnalando in web il tutto oppure rimangono visibili solo a me? A quel punto mi son reso conto di avere fatto una stronzata ed ho cancellato tutto! Ho fatto bene?
Ah, non saprei dirti con certezza, ma nel dubbio… 🙂
Se non sbaglio (e non vorrei dire una castronerai), c'è la possibilità di condividere i propri tracciati, seguire il percorso che sto seguendo in macchina tramite il gps, etc…
Serve un software adeguato.
Qualcosa che invii ad un servizio che usa gmaps un file kml o gpx con le coordinate.
Per iPhone ce ne sono parecchi di buoni.
Metti che fai una bella passeggiata in un bosco e poi passi il tracciato ad un amico. E' molto utile.
Sto impazzendo per cercare di capire il codice da usare x far uscire la "nuvoletta" sul marker subito, senza bisogno del click… mi date una mano?
ho cercato dappertutto senza esito…
grazie 1000
Ciao Paka,
Leggi qui: http://www.davidonzo.com/post/1085/google-maps-marker-con-nuvola-al-loading-della-mappa/