Tengo un menú tipo árbol, con sus ul's, li's, ul's dento de li's y li's dentro de ul's... bueno, ya me entendeis.
Primero inicializo el árbol.
Cuando pincho sobre una de las categorías hago que se abra el submenú correspondiente a ese menú y que se cierren los demás. La clase de ese menú en concreto cambia a categoría abierta y todas las otras a categoría cerrada(por si había anteriormente una abierta).
En este paso, cuando abro el submenú, a las subcategorías(li's dentro de ul) les doy una clase de subcategoría(cambio tamaño de letra e imágen de lista).
El problema está cuando lo que quiero es marcar un submenú seleccionado. No me permite con javascript cambiarle la clase a ese li en concreto!! Y si le doy un color(con style.color='nombrecolor') luego ya no hay quien le cambie el color.
Os pongo un poco de código a ver si os lo aclaro:
Código HTML:
Ver original
Código Javascript:
Ver original
function iniciaMenuArbol() { var menu = document.getElementById('menuArbol'); var subramas = menu.getElementsByTagName('ul'); for(var i=0; i<subramas.length; i++) { var categoria = subramas[i].parentNode; categoria.className='cCerrada'; var idcat = categoria.id; var subcat = subramas[i].getElementsByTagName('li'); for(var j=0; j<subcat.length; j++) { subcat[j].id = 's'+idcat+j; } } escondeMenu(); };
Si necesitais más código, pedidlo.
Gracias por la ayuda!!