oh mamma ...è un po' un casino sintetizzare ...ci provo
codice:
cmq ..dopo essermi attaccato più volte al tubo del gas di cucina, ho risolto inventandomi un'altra struttura (eh...la creatività col Javascript ci gode!), cmq per il gusto di sapere vi riporto tutto il codice precedente
ho dovuto incrociare 3 strutture di Javascript (combinate col CSS) create per:
1. avere un menù con tendine per il 2 livello (usando hidden con i DIV e onMouseOver)
2. avere un codice unico per il menù per tutte le pagine (usando innerHTML)
3. cambiare la lingua del sito (usando hidden con i DIV)
PS: riporto solo il cuore di tutto perchè altrimenti dovrei copiarvi tutti il contenuto dei file di stile e dei file di js, compreso la html di riferimento
QUESTO CREA UN BOTTONE NEL MENU DI PRIMO LIVELLO ("MenuLivello1"):
codice='<TD id=\"MenuLivello1\" class=\"MenuVisibile\" onClick=\"Vai(\'1.htm\');\" onMouseOver=\"document.getElementById(\'MenuLivell o2\').className=\'MenuVisibile\';\"><DIV class=\"ItaVisibile\">FUNGO</DIV><DIV class=\"IngNascosto\">MUSHROOM</DIV></TD>';
QUESTO CREA IL SOTTOMENU DI SECONDO LIVELLO ("MenuLivello2"):
codice=codice+'<DIV class=\"ItaVisibile\"><TABLE id=\"MenuLivello2\" class=\"MenuNascosto\" style=\"top:40; left:536; width:145px; height:44px;\"><TR><TD>( ...in costruzione )</TD></TR></TABLE></DIV>';
codice=codice+'<DIV class=\"IngNascosto\"><TABLE id=\"MenuLivello2\" class=\"MenuNascosto\" style=\"top:40; left:524; width:170px; height:44px;\"><TR><TD>( ...works in progress )</TD></TR></TABLE></DIV>';
QUESTO CAMBIA LA LINGUA:
if(document.getElementsByTagName) {
for(i=0; i < document.getElementsByTagName("DIV").length; i++) {
if(document.getElementsByTagName("DIV")[i].className=="ItaVisibile") { document.getElementsByTagName("DIV")[i].className = "ItaNascosto"; }
if(document.getElementsByTagName("DIV")[i].className=="IngNascosto") { document.getElementsByTagName("DIV")[i].className = "IngVisibile"; }
il menu a 2 livelli funziona, ma se cambio la lingua (e lo fa), il menù non funziona più, cioè non fa vedere il Livello2 al passaggio del mouse sopra il Livello1
vi assicuro che non ci sono errori di sintassi, le strutture di Javascript prese a sè funzionano perfettamente, è solo in questa concatenzazione che non funzionano
se tolgo la traduzione nel Livello2 funziona tutto perfettamente, quindi ne deduco chec'è qualche problema tra il onMouseOver che era nascosto (quello dell'inglese) ed il cambiamento dei CSS dentro all'elemento che doveva mostrare