ciao a tutti
ho creato una google maps con dei markers caratterizzati da un effetto onmouseover , il quale sposta la visuale della mappa centrandola sul marker selezionato appena passa la freccetta sul marker selezionato.
l' effetto sulla mappa funziona benissimo, ma quando vado a creare lo stesso effetto per degli elementi, il passaggio del mouse sopra ogni elemento centra la visuale sempre sullo stesso marker, anziche puntare all altro marker come vorrei che facesse.... invece per ogni elemento dove passo ,la visuale deve spostarsi su un marker diverso per ogni elemento
voglio che l' effetto funzioni dinamicamente, ossia in base a degli elementi (precisamente dei div) che vengono generati da un database. Come posso fare per attribuire un marker univoco ad ogni elemento? Ho provato ad assegnare l' onmouseover al div contenuto nel codice php, ma nella funzione javascript che richiamo devo per forza passare un valore prestabilito, ad esempio all' elemento 1 corrisponde il parametro 1, al 2 il parametro 2 e cosi via... Io vorrei invece che il parametro vari in relazione all' elemento selezionato, e di conseguenza sposti la visuale sul marker ad esso associato..
vi posto il codice javascript:
// JavaScript Document
var gmarkers = [];
var map;
function myclick(i) {
GEvent.trigger(gmarkers[i], "mouseover");
}
function onLoad() {
if (GBrowserIsCompatible()) {
function createMarker(point,name,html) {
var marker = new GMarker(point);
GEvent.addListener(marker, "mouseover", function() {
marker.openInfoWindowHtml(html);
});
gmarkers.push(marker);
return marker;
}
map = new GMap2(document.getElementById("map"));
var center = new GLatLng(40.5579814, 8.3222037);
map.setCenter(center, 15, G_NORMAL_MAP); // Mappa ibrida
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.addControl(new GOverviewMapControl());
//Creazione marker personalizzati
var point = new GLatLng(40.5515273, 8.3238474);
var marker = createMarker(point)
map.addOverlay(marker);
var point = new GLatLng(40.5581447, 8.3119028);
var marker = createMarker(point)
map.addOverlay(marker);
var point = new GLatLng(40.5769194, 8.3151807);
var marker = createMarker(point)
map.addOverlay(marker);
}
}
invece la parte php è questa:
<td class="column'<?php echo $col; ?>" style="vertical-align: top">
//COME POTETE NOTARE , IL PARAMETRO DELLA FUNZIONE E' UN VALORE FISSO, IL QUALE ASSEGNA IL MARKER 2 A TUTTI GLI ELEMENTI DIV PRESENTI. SE PASSO COME PARAMETRO i, CHE E' CONTENUTO NELLA FUNZIONE JAVASCRIPT IN ALTO, MI GENERA UN ERRORE, DICENDO CHE i NON E DEFINITO. VOGLIO QUINDI ASSEGNARE UN MARKER UNIVOCO PER OGNI ELEMENTO DIV GENERATO
<div onmouseover="javascript:myclick(2);" class="post" id="post-'<?php the_ID(); ?>'">
<h2>"><?php the_title(); ?></h2>
<div class="p_content"><?php the_content(); ?></div>
</div>
</td>
aspetto una vostra risposta
grazie a tutti