Ciao a tutti,
premetto che non conosco bene javascript.
Qualcuno mi potrebbe aiutare a decifrare questo script?
la funzione viene richiamata in questo modo
onMouseOver="MM_showHideLayers('menu','','show')"
e le funzioni interessate sono queste
function MM_findObj(n, d) { //v4.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
)&&d.all)
{ x=d.all
;
}
for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i]
;
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_showHideLayers() { //v3.0
var i,v,obj,args=MM_showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3)
if ((obj=MM_findObj(args[i]))!=null)
{ v=args[i+2];
if (obj.style)
{ obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v;
} obj.visibility=v;
}
}
L'effetto che realizza è quello che fa aprire un sottomenu rendendo visibile una parte di codice html che sta dentro i tag <div> che hanno un id che è "menu" e nello style ha l'attributo nascosto.
<div id="menu" style="position:absolute; top:233px; width:152px; height:54px; z-index:auto; left: 114px; visibility: hidden">
siccome volevo utilizzare uno script del genere volevo capire come funziona; inoltre in questo modo la posizione del sottomenu è fissa (come si vede nel <div>) e quello che volevo cercare di fare era calcolare in maniera automatica la posizione del sottomenu (in base magari alla posizione della voce del menu principale)
spero di essere stato chiaro e che qualcuno mi voglia aiutare....:-)
ciao