con questo ottimo script:
http://www.webmasterpoint.org/appunti/javascript/34.asp
si possono mettere dove si vogliono messaggi e immagini in dissolvenza al passaggio del mouse, ma purtroppo funziona solo su explorer.
Qualcuno di voi saprebbe modificarlo per farlo funzionare anche sugli altri browser ?
Vi scrivo anche il codice della pagina che contiene lo script:
<HTML><head><BASE HREF="http://www.webmasterpoint.org/appunti/javascript/" />
<title>Esempio Javascript</title>
</head>
<body >
<div id="Layer1" style="position:absolute; left:8px; top:60px; width:254px; height:255px; z-index:2">
<font face="Verdana, Arial, Helvetica, sans-serif">Questo script è
di libero utilizzo.</font></p>
<font face="Verdana, Arial, Helvetica, sans-serif">Unica condizione è
che non vengano tolti i riferimenti all'autore all'interno del codice.</font></p>
<font face="Verdana, Arial, Helvetica, sans-serif"><a href="mailto:hyppos@aruba.it?subject=Script:%20Inf o%20in%20Dissolvenza">Copyright©2k1Filippo
Bonanni</a></font></p>
</div>
<script language="JavaScript">
<!--
/*
Script realizzato da Filippo Bonanni
Copyright©2k1FilippoBonanni
e-mail: hyppos@aruba.it
Questo script è di libero utilizzo.
Unica condizione è che non vengano tolti i riferimenti all'autore all'interno
del codice e che specifichiate, nella pagina in cui inserirete lo script,
www.jsdir.com quale sito da cui è possibile prelevarlo.
*/
//Testo che appare in un layer in dissolvenza - Inizio
var msg=new Array();
msg[0]="";
msg[1]="msg[1]";
msg[2]="msg[2]";
msg[3]="msg[3]";
msg[4]="msg[4]";
var n_msg=0;
var fade_time=1; // intervallo di tempo prima di richiamare la funzionefadeon e fadeoff
var fade_incremento=null; // passo dell'incremento del filtro opacity; aumentando questo valore, si aumenta la velocità della dissolvenza
var fade_min=null; //valore minimo di trasparenza del layer
var fade_max=null; //valore massimo di trasparenza del layer
var tOff=null;
//fin è il layer a cui verra applicata la dissolvenza
//dest è il layer in cui apparira il testo (di solito coincidono se si vuole che anche il testo appaia in dissolvenza)
//n_msg è il numero relativo all'array di msg qui sopra
//fade_max è il livello massimo di opacity che deve avere il layer
//fade_min è il livello minimo (usato in fadeoff1)
function fadeon(fin,dest,n_msg,fade_max,fade_incremento){
if (tOff){
clearTimeout(tOff);
tOff=false;
}
document.all[dest].innerHTML=msg[n_msg];
x=fin;
d=dest;
y=n_msg;
max=fade_max;
inc=fade_incremento;
if (document.all[fin].filters.alpha.opacity<fade_max){
document.all[fin].filters.alpha.opacity +=fade_incremento;
tOn=setTimeout('fadeon(x,d,y,max,inc)',fade_time);
}
}
function fadeoff(fin,fade_min,fade_incremento){
clearTimeout(tOn);
x=fin;
min=fade_min;
inc=fade_incremento;
if (document.all[fin].filters.alpha.opacity>fade_min){
document.all[fin].filters.alpha.opacity -=fade_incremento;
tOff=setTimeout('fadeoff(x,min,inc)',fade_time);
}
}
//Testo che appare in un layer in dissolvenza - Fine
//-->
</script>
<div id="testo" style="position:absolute; background-image:url(http://www.schwenn.it/logo.jpg); top:138px; left:381px; width:200px: heigth:100px; color:#c0c0c0; cursor:default; font-size:20px; filter: alpha(opacity=0); width: 264px; height: 130px;"></div>
<span id="layer1" style="position: absolute; top: 80px; left: 310px; visibility:visible;font-size:30px; cursor:hand; filter: alpha(opacity=30); z-index: 1" onmouseover="fadeon('testo','testo',1,100,5)" onMouseOut="fadeoff('testo',0,5)">
layer1</span>
<span id="layer2" style="position: absolute; top: 131px; left: 604px; visibility:visible;font-size:30px; cursor:hand; filter: alpha(opacity=30); z-index: 1" onmouseover="fadeon('testo','testo',2,100,5)" onMouseOut="fadeoff('testo',0,5)">
layer2</span>
<span id="layer3" style="position: absolute; top: 305px; left: 540px; visibility:visible;font-size:30px; cursor:hand; filter: alpha(opacity=30); z-index: 1" onmouseover="fadeon('testo','testo',3,100,5)" onMouseOut="fadeoff('testo',0,5)">
layer3</span>
<span id="layer4" style="position: absolute; top: 243px; left: 293px; visibility:visible;font-size:30px; cursor:hand; filter: alpha(opacity=30); z-index: 1" onmouseover="fadeon('testo','testo',4,100,5)" onMouseOut="fadeoff('testo',0,5)">
layer4</span>
<span id="note" style="position: absolute; top: 400px; left: 100px; visibility:visible;font-size:18px; cursor:hand; filter: alpha(opacity=30); z-index: 1" >
Note:
il valore iniziale (quello scritto nel tag) della proprietà opacity del layer a cui verrà applicata la dissolvenza (testo in questo caso), deve essere sempre inferiore al valore fade_max che si dichiara nella funzione fadeon altrimenti il "contatore" tOn non viene attivato.
Per poter usare fadeon e fadeoff per gestire dissolvenze di layer senza testo, è sufficiente creare un messaggio vuoto nell'array di messaggi (in questo caso msg[0]) e passare quello a fadeon</span>
</body>
</html>
Grazie