Ver Mensaje Individual
  #10 (permalink)  
Antiguo 28/06/2002, 12:35
Avatar de Beakdan
Beakdan
 
Fecha de Ingreso: diciembre-2001
Ubicación: Monterrey, Nuevo León
Mensajes: 433
Antigüedad: 22 años, 4 meses
Puntos: 7
Re: mostrar ocultar capas

Pues yo no creo que NS4 sea una porquería, aunque hace mucho tiempo dejé de hacer códigos crossbrowser para cumplir con los estándares DOM. El script de KarlanKas modificado para que funcione con IE4, NS4 y navegadores con soporte DOM, queda como sigue:

Código:
<html>
<head>
<script LANGUAGE="javascript">
<!--
var capa
function cambio(idCapa){
 if (document.layers) capa = eval("document." + idCapa);
 if (document.all) capa = eval(idCapa + ".style");
 if (document.getElementById) capa = eval('document.getElementById("' + idCapa + '").style');

 if ((capa.visibility == "hidden") || (capa.visibility == "hide")){
  capa.visibility = (document.layers) ? "show" : "visible" ;
 }else{
  capa.visibility = (document.layers) ? "hide" : "hidden" ;
 }
}
//-->
</script>
</head>
<body>
<div id="pepito" style='position:relative;'>
Saludosss
</div>
<div id="juan" style='position:relative;'>
Despedidas
</div>
<img src="dibujo.jpg" onclick="cambio('pepito')">
<img src="dibujo2.jpg" onclick="cambio('juan')">
</body>
</html>
Para que en NS4 se puedan manipular las capas, deben tener asignada al menos una propiedad. Es por eso que a las etiquetas <div> les he agregado "style='position:relative;'", que no afecta a la presentación de las mismas. Si lo quitan, las capas no podrán ser manipuladas con JavaScript y recibirán el mensaje de que el objeto no posee propiedades.

Saludos.