ma funziona? perchè non mi sembra mica...
prova così:
Codice PHP:
function init(){
var ob = document.getElementById('menu');
var l = ob.getElementsByTagName('a');
for(var i=0; i<l.length; i++){
l[i].onclick = function(e){
/*Quando sono in una funzione legata ad un evento di un elemento
La funzione ha come scope l'elemento stesso, per cui this è l'elemento stesso.
*/
this.style.backgroundColor = "blue";
/*A questo punto devi fare un ciclo per controllare impostare
i valori agli altri elementi
*/
for(j = 0; j < l.length; j++)
{
if(l[j] != this)
{
l[j].style.backgroundColor = "red";
}
}
}
}
}
window.onload = init;
Credo che tu non abbia molto chiaro che se imposti all'evento generale della pagina window.onclick una funzione, devi ottenere l'elemento per poterlo manipolare. Inoltre, la funzione viene chiamata SOLO per l'elemento chiamante, e tutti i suoi nodi contenitori, non per gli altri elementi della lista, devi vedere come degli interruttori che quando attivati fanno quella azione indipendentemente dagli altri.