allora, il discorso e' un poco complicato.
non si tratta di poche righe di codice.
e ci sono anche diversi modi x arrivare all'obiettivo, si tratta solo del gusto e della fantasia del programmato.
di mio, cerchero' di renderti astrattamente l'idea.
nel body si deve creare un div iniziale vuoto, invisibile, con posizione assoluta, e con uno z-index altissimo, diciamo il + alto (poiche' deve comparire sopra tutto):
esempio:
codice:
/*
nel css definisci lo stile del div
*/
#dettagli {
display:none;
position:absolute;
z-index:9999;
}
//------------------------
/*
mentre nel body inseriamo il div vuoto
N.B. il div deve essere un childNode di BODY, altrimenti il suo z-index nn funziona (da quanto ho potuto constatare con i miei test)
*/
<div id="dettagli"></div>
questo div sara' semplicemente il contenitore dell'alt, che si popolera' ogni qualvolta viene richiamato.
----
ora, mettiamo caso che hai un link, od una immagine, alla quale quando ci passi sopra ti deve apparire questo riquadro dei dettagli.
al tag del link (o dell'immagine) ci aggiungi la proprieta' onmouseover e onmouseout attaccati ad una funzione javascript, in questo modo:
pappagallo
le quali 2 funzioni contengono piu' o meno questi passi:
codice:
function mostraDettagli(id) {
d = document.getElementById('dettagli');
switch (id) {
case 'pappagallo':
d.innerHTML = '[img]pappagallo.jpg[/img] bla bla bla'; // qui ci metti il codice HTML della descrizione
break;
case 'oca':
d.innerHTML = '[img]oca.jpg[/img] bla bla bla'; // qui ci metti il codice HTML della descrizione
break;
... // e cosi via
}
// una volta popolato il codice HTML dentro il div, bisogna
d.style.display = 'block'; // renderlo visibile
// e poi posizionarlo sotto il cursore
// (il codice e' abbastanza complesso da spiegare)
}
function nascondiDettagli() {
// rendiamo invisibile il div #ettagli
document.getElementById('dettagli').style.display = 'none';
}
---
questo e' un esempio terra-terra, ci sono modi + avanzati, piu' completi, e piu' unobtrusive per fare la stessa cosa
saluti