Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/11/2012, 14:22
Canal_on
 
Fecha de Ingreso: julio-2007
Mensajes: 16
Antigüedad: 17 años, 5 meses
Puntos: 2
Exclamación No funciona en IE, y si funciona en todos los demás...

Hola a tod@s

A ver si alguien se le ocurre qué le está pasando a este código, que me lleva varias horas loco...

He subido el ejemplo en :[URL="http://perso.ya.com/azarces/proba5.html"]http://perso.ya.com/azarces/proba5.html[/URL]

El código es super sencillo y funciona 100% en Firefox, Chrome y Safari... pero no funciona en IE (ni 8 ni 9)

Deduzco que el problema le pasa a IE por tratarse de varios <ul> anidados... aunque cada uno de ellos tiene su propio 'id'.

En IE funciona hasta el 2º nivel, pero a partir de ese, lo que hace es ejecutar dos veces la función (!?), y como el style.display lo ha puesto en 'block', al volver a pasar (sin que nadie se lo haya pedido...) lo pone otra vez en 'none'...

pues eso, que ando loco a ver si descubro qué pasa y como solucionarlo...

Este es el codigo javascript (mas sencillo no puede ser...:
Código javascript:
Ver original
  1. function alternar(Seccion){
  2.     if (Seccion.style.display=="none"){Seccion.style.display="block"}
  3.     else{Seccion.style.display="none"}
  4. }

y este es codigo entero:

Código:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 
<script language="JavaScript">

function alternar(Seccion){ 
    if (Seccion.style.display=="none"){Seccion.style.display="block"}
    else{Seccion.style.display="none"} 
}

</script>
</head>

<body >

<div id='parte1' style='display:block;'>

<div id='ni1' style='display:block;' onClick=alternar(lni1);>Ärbol Geneálogico</div>

<ul id='lni1' style='display:none;' >
	<li id="ni1dr1"  onClick=alternar(lni1dr1);  style='display:block;'>Yo mismo </li>&nbsp;&nbsp;

	<ul id='lni1dr1' style='display:none;'  >
		<li id='ni1dr1dp1'   onClick=alternar(lni1dr1dp1);   style='display:block;' >Mi Padre</li> &nbsp;&nbsp;
			<ul id='lni1dr1dp1' style='display:none;' >
				<li id='ni1dr1dp1s1'  onClick=alternar(lni1dr1dp1s1);  style='display:block;'>Sus Padres</li>
					<ul id='lni1dr1dp1s1' style='display:none;' >
						<li id='lni1dr1dp1s1e1 'style='display:block;' >Mi Abuelo Paterno</li>
						<li id='lni1dr1dp1s1e2' style='display:block;' >Mi Abuela Materna</li>
					</ul>
			</ul>
	</ul>
</ul>

</div>
</body>
</html>
Ayuda, please!!

Última edición por Canal_on; 23/11/2012 a las 14:44 Razón: incluir la dirección en la que he subido el ejemplo