Isomarcus
18-02-2007, 12:17
salve a tutti, sto impazzendo con questo semplicissimo script js:
window.onload=expand;
function expand(id) {
var elem = document.getElementById(id);
for (var i = 1; i<=20; i++) {
if (document.getElementById('submenu'+i)) {document.getElementById ('submenu'+i).style.display='none';}
}
if (elem) {d.style.display='block';}
}
quello che fa in pratica è espandere dei submenu quando si clicca sull'elemento padre, e contemporaneamente chiudere gli altri già aperti... ora quello che vorrei aggiungere a questa funzione è la possibilità di chiudere il submenu quando si clicca una seconda volta sull'elemento padre... beh parola mia ho provato almeno 10 modi diversi ma non funziona... quello che avevo provato io è controllare se il submenu è già espanso (cioè se il submenu ha display = block) e in caso chiuderli mettendo display = none... ma temo che i controlli condizionali su proprietà di stile (in questo caso display) non funzionino come spero io :D
preciso che ho cercato di rendere lo script il più leggero e snello possibile, è per questo che è così striminzito... il sito è centrato su tanto php quindi non voglio esagerare col js :p
window.onload=expand;
function expand(id) {
var elem = document.getElementById(id);
for (var i = 1; i<=20; i++) {
if (document.getElementById('submenu'+i)) {document.getElementById ('submenu'+i).style.display='none';}
}
if (elem) {d.style.display='block';}
}
quello che fa in pratica è espandere dei submenu quando si clicca sull'elemento padre, e contemporaneamente chiudere gli altri già aperti... ora quello che vorrei aggiungere a questa funzione è la possibilità di chiudere il submenu quando si clicca una seconda volta sull'elemento padre... beh parola mia ho provato almeno 10 modi diversi ma non funziona... quello che avevo provato io è controllare se il submenu è già espanso (cioè se il submenu ha display = block) e in caso chiuderli mettendo display = none... ma temo che i controlli condizionali su proprietà di stile (in questo caso display) non funzionino come spero io :D
preciso che ho cercato di rendere lo script il più leggero e snello possibile, è per questo che è così striminzito... il sito è centrato su tanto php quindi non voglio esagerare col js :p