devi distinguere se la voce in questione appartiene al primo gruppo o al secondo e nascondere solo i livelli dello stesso gruppo, potresti procedere in tanti modi, vista la situazione contingente io farei cosi'
codice:
function swap(nome) {
var gdivs = [
"usciterecenti",
"oldworks",
"demosmini",
"reportages",
"interviste",
"newsradar",
"concerti_iniziative",
"annunci_feedback"
];
var min=0;
var max=gdivs.length;
var vGr=5;
for(var q in gdivs){
if(gdivs[q]==nome){
if(q<vGr) max=vGr;
else min=vGr;
}
}
for (var i = min; i < max; i++) {
document.getElementById(gdivs[i]).style.display = "none";
}
document.getElementById(nome).style.display = "block";
}
quel vGr e' il numero di voci del primo gruppo,
il tutto funzionera' finche' i gruppi rimarranno 2
ma mi sembra vedendo lo spazio/layout che non ne avrai + di 2
ciao