lunedì 30 novembre 2009

Visualizzazione markers su una Yahoo! Map

Complichiamo solo leggermente il codice presente nel post precedente per consentire la visualizzazione di due markers sui quali viene associata la visualizzazione di un testo se vi ci si clicca sopra.
Il marker viene visualizzato attraverso il metodo map.addOverlay(); ad esso viene associato l' l'evento MouseClick al cui verificarsi verrà elaborata la funzione openSmartWindow.

Segue la parte di codice che gestisce il tutto e naturalmente, potrete vedere il risultato cliccando qui.

// Crea il primo marker
var marker1 = new YMarker("Viale Italia, 40, la spezia, italia");
// Stringa da visualizzare cliccando sul primo marker
var contenuto1 = "

Qui ho abitato dalla nascita al 1990

";
// Apre una finestra al verificarsi dell'evento 'click' sul marker
YEvent.Capture(marker1, EventsList.MouseClick,
function() {
marker1.openSmartWindow(contenuto1);
});
// Visualizza il marker
map.addOverlay(marker1);

// Crea il secondo marker
var marker2 = new YMarker("Via pontegrande 120, la spezia, italia");
// Stringa da visualizzare cliccando sul secondo marker
var contenuto2 = "

Qui ho vissuto dal 1990 al 2000

";
// Apre una finestra al verificarsi dell'evento 'click' sul marker
YEvent.Capture(marker2, EventsList.MouseClick,
function() {
marker2.openSmartWindow(contenuto2);
});
// Visualizza il marker
map.addOverlay(marker2);


Per semplicità mi sono limitato a ripetere per ogni marker i passi necessari alla loro visualizzazione. Volendo ricercare una soluzione più raffinata, avremmo potuto includere i dati da visualizzare in un array e visualizzare il tutto tramite un ciclo iterativo. Ma questo potrebbe essere oggetto di un ulteriore post.
Alla prossima.

1 commento:

  1. scusa ma da qualche mese questo script non funziona piu ..
    il marker viene visualizzato fisso nell'equatore.. c'è una ragione?

    RispondiElimina