Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/09/2011, 09:33
Avatar de geclos
geclos
 
Fecha de Ingreso: febrero-2011
Ubicación: Barcelona, Spain, Spain
Mensajes: 17
Antigüedad: 13 años, 2 meses
Puntos: 0
Cambiar clase de un objecto clickando en otro objeto

Hola soy bastante nuevo en esto de javascript.

El tema es el siguiente.

Tengo una lista de links de class "menulink":
Código:
<div class="linkactivo">
                	<a href="quees14cg.html" class="menulink">Qué es 14CG?</a>
                	</div>
                	<div class="linkinactivo">
                    <a href="vision.html" class="menulink">Visión, Misión y Valores</a>
                    </div>
                    <div class="linkinactivo">
                    <a href="equipo.html" class="menulink">Equipo</a>
                    </div>
                    <div class="linkinactivo">
                    <a href="comotrabajamos.html" class="menulink">Como trabajamos</a>
                    </div>
La idea es que al clickar en alguno de estos links, pueda cambiar la class de otros objetos situados mas abajo y de class "contentvisible" y "contentnovisible" (dependiendo de si quiero que sean visibles o no).

Este es el javascript que tengo de momento:
Código:
window.onload = initAll();

function initAll() {
	var allLinks = document.getElementsByTagName("a");
	for ( var i = 0; i<allLinks.lenght; i++) {
		if (allLinks[i].className == "menulink") {
			allLinks[i].onClick = toogleMenu();
		}
	}
}

function toggleMenu() {
				var startId = this.href.lastIndexOf("/")+1;
				var stopId = this.href.lastIndexOf(".");
				
				var myId = this.href.substring(startId,stopId);
				var myIdClass = document.getElementById(myId).className;
				
				if (myIdClass == "contentvisible") {
        	myIdClass = "contentnovisible";
			} else {
				myIdClass = "contentvisible";
				}
				return false;
			}
Como vereis por el codigo, para obtener el Id del objeto que quiero cambiar lo que hago es sacarlo del href del link que he apretado con la funcion substring.

El problema es que al cargar la pagina nada de esto ocurre y si apreto en alguno de los links me redirige al href correspondiente, que no existe.

Gracias de antemano por la ayuda.

Un saludo.

Última edición por geclos; 22/09/2011 a las 11:49