<div id="map" style="width: 350px; height: 220px"></div>
<script src="http://maps.google.com/maps?file=api&v=2&key=API-KEY-QUI" type="text/javascript"> </script>
La dicitura API-KEY-QUI va sostituita con la API Key vera e propria. Questo blocco script che punta al sito di Google ha il compito di importare nella pagina tutto il codice Javascript necessario per gestire le mappe.
Il secondo blocco di Javascript da aggiungere è quello che verrà intergrato più avanti con le istruzioni per personalizzare la mappa. Per il momento la funzione showMap si limita a creare la mappa, centrarla su Roma e impostare uno zoom di fattore cinque utilizzando il metodo GMap2.setCenter (doc).
<script type="text/javascript">
//<![CDATA[
function showMap()
{
if (GBrowserIsCompatible())
{
// Ottiene l'elemento della pagina chiamato "map" (il DIV) e crea la mappa utilizzandolo come contenitore.
var map = new GMap2(document.getElementById("map"));
// Aggiunge dei controlli per lo zoom e lo spostamento
map.addControl(new GSmallMapControl());
// Centra la mappa su Roma, con uno zoom di 5
map.setCenter(new GLatLng(41.896655,12.495918), 5);
}
}
//]]>
</script>
Il procendimento per ricavare, tramite Google Maps, i valori di latitudine 41.896655 e longitudine 12.495918 di Roma è il seguente: una volta individuato il punto nella mappa che ci interessa doppioclicchiamoci sopra, la mappa verrà centrata sul punto cliccato ed il link mostrato in Collegamento a questa pagina avrà un indirizzo simile a http://maps.google.com/maps?f=...ll=41.896655,12.495918...om=1.
Il valore del parametro ll sono le coordinate da dare in pasto all'oggetto GLatLng che centreranno la mappa sul punto desiderato.
L'ultimo passaggio consiste nell'istruire il browser su cosa fare durante il caricamento e lo "scaricamento" della pagina. Aggiungiamo quindi a body i due attributi onload e unload.
Il primo si occuperà di chiamare la nostra funzione showMap, il secondo invocherà la funzione GUnload di Google Maps quando il browser lascia la pagina che contiene la mappa.
<body onload="showMap();" onunload="GUnload()">
Ora vediamo come aggiungere un marker per individure un punto sulla mappa e associarci una descrizione.
All'interno di showMap scriviamo una funzione di utilità chiamata createMarker. Questa raggruppa il codice necessario per creare un nuovo oggetto GMarker e associare a questo un handler per l'evento click. Visto che vogliamo appaia una descrizione quando il marker viene cliccato nell'handler invocheremo il metodo GMarker.openInfoWindowHtml, passandogli del testo tramite la variabile description. Richiamiamo la funzione createMarker, passandogli coordinate e descrizione per il nostro marker.
function showMap()
{
if (GBrowserIsCompatible())
{
//codice di setCenter, ecc.
//Crea un nuovo marker nel punto specificato con una descrizione HTML associata
function createMarker(point, description)
{ var marker = new GMarker(point);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(description); });
return marker;
}
map.addOverlay( createMarker(new GLatLng(41.896655,12.495918), "<b>Roma</b>, Italia") );
}
}