Newsgroup: it.comp.lang.javascript
Titolo: [newbie] Barra di navigazione animata

Salve a tutti!!!
Premessa: e' poco che lurko sul ng, quindi se questo non e' il luogo adatto
per porre la mia domanda vi pregherei di indicarmi il ng giusto. :^P
Sto creando un sito, e ho pensato di realizzare un frame laterale contenente
la barra di navigazione ed uno con le pagine vere e proprie.
La barra e' composta da un riquadro (in alto) e da una serie di "pulsanti".
Come e' possibile fare in modo che, quando il puntatore passa su uno dei
pulsanti, oltre a "premerlo" faccia apparire un'immagine nel riquadro
superiore?
Ringrazio anticipatamente per la risposta.
--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ricorda: il segreto e' contestare tutto,
anche l'incontestabile, e negare
tutto, anche e soprattutto l'evidenza!
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Buttero
Cornus Lanuginis sub Lecto Placidi Ordinis Vaccae Stupefactae
IHGGer #883
butter...@hotmail.com

Allora,
vediamo un po'.
Sperando che usi dreamweaver quello che devi fare e' questo:
1) crea un layer dove vuoi inserire l'immagine per il rollover,
2) inserisci un rollover, l'immagine originale sara' quella che si vedra' al
caricamento della pagina, mentre l'immagine di rollover sara' quella che si
vedra' al passaggio sul primo pulsante.
3) seleziona il primo pulsante ed aggiungi il behavior:"swap image", aquesto
punto seleziona: "image "Image1" in "Layer1" e poi in set source metti
l'immagine di rollover e spunta le due opzioni preload e di restore.
4) a questo punto, vai nel Layer, seleziona l'immagine e rimuovi tutti i
behavior.
5) premi F12 e controlla il risultato.
Ripeti il giochetto per gli altri menu' ed e' finita.
Se non usi DW ecco qui' lo script:
<script language="JavaScript">
<!--
function MM_swapImgRestore() { file://v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)
x.src=x.oSrc;
}
function MM_preloadImages() { file://v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length;
i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { file://v3.0
  var p,i,x;  if(!d) d=document;
if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++)
x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++)
x=MM_findObj(n,d.layers[i].document); return x;
}
function MM_swapImage() { file://v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array;
for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc)
x.oSrc=x.src; x.src=a[i+2];}
}
file://-->
</script>
nel body aggiungi: onLoad="MM_preloadImages('immagine di rollover.xxx')"
crei il Layer: <div id="Layer1" style="position:absolute; left:49px; top:27p
x; width:198px; height:171px; z-index:1"><img name="Image1" src="immagine
originale.xxx" width="150" height="75"></div>
nel pulsante aggiungi: onMouseOut="MM_swapImgRestore()"
onMouseOver="MM_swapImage('Image1','','immagine di rollover.xxx',1)"
E' un po' macchinoso ma funziona.
Ciao.