Manuales
HTML básico
HTML 2ª. y CSS
Propiedades CSS
Javascript
Applets Java
CGIs

 
dHTML
Introducción
Cambiar formato
Mover capas
Mover con teclado
Visibilidad
Mover con el ratón
 
JavaScript
Barra de estado
Botones y menús
Validar formular.
Passwords
Abrir ventanas
Cargar frames
Volver atrás
Alertas
Ver navegador
Cargar imágenes
 
Creación de páginas web
© Paco Cascón Soriano
(diseño del índice tomado de la espléndida página jsworld.com)

Visibilidad de capas

También para esto los dos principales navegadores (Netscape y Explorer) se comportan de forma diferente a la hora de manejar capas creadas con CSS. Para asegurar la compatibilidad seguiremos utilizando el script que creamos en el apartado de mover capas:


if(document.getElementById){  // si se trata de Netscape 6
        Refcapa='document.getElementById("'
        Refestilo='").style'
        Reftop='.top'
        Refleft='.left'
}else if(document.layers){ // si se trata de Netscape 4
        Refcapa='document.'
        Refestilo=''
        Reftop='.top'
        Refleft='.left'
}else if(document.all){ // si se trata de Internet Explorer 4
        Refcapa=''
        Refestilo='.style'
        Reftop='.pixelTop'
        Refleft='.pixelLeft'
}

Ahora crearemos las funciones que permiten ocultar las capas y las que permite mostrar las capas:

function mostrarcapa(capa){
        eval(Refcapa+capa+Refestilo+'.visibility="visible"');
        }  

function ocultarcapa(capa){
        eval(Refcapa+capa+Refestilo+'.visibility="hidden"');
        }

Vamos a realizar un ejemplo del uso de esas funciones. Se trata de crear una página con dos imágenes y que al pasar con el ratón por encima de ellas salga un texto a su lado.

Primero crearemos las capas utilizando las hojas de estilos. Dos de ellas, las que contienen los textos que querremos que aparezcan, las ocultamos:


<style type=text/css>
<!--
#capa1 {position:absolute;width:100px;height:25px;top:50px;left:50px}
#capa2 {position:absolute;width:100px;height:25px;top:80px;left:50px}
#capa3 {position:absolute;width:250px;height:15px;top:50px;left:200px;
visibility:hidden}
#capa4 {position:absolute;width:250px;height:15px;top:50px;left:200px;
visibility:hidden}
//-->
</style>

Ya sólo falta colocar las imágenes y, a través de los eventos onMouseOver y onMouseOut, llamar a las funciones de mostrar capa y ocultar capa:

<div id=capa1><a href="#" onMouseOver="mostrarcapa('capa3')" onMouseOut="ocultarcapa('capa3')"><IMG SRC="recgif.gif" WIDTH="100" HEIGHT="25" BORDER="0" ALT="imagen1"></A></div>

<p><div id=capa2><a href="#" onMouseOver="mostrarcapa('capa4')" onMouseOut="ocultarcapa('capa4')"><IMG SRC="tallgif.gif" WIDTH="100" HEIGHT="25" BORDER="0" ALT="Imagen2"></a></div>

<div id=capa3>Este es el texto que quiero que aparezca si se señala la imagen de Recursos, que está arriba.</div>

<div id=capa4>Este es el texto que quiero que aparezca si se señala la imagen "Taller Web" que está en la parte de abajo.</div>

Aquí puedes ver este ejemplo.

Otro ejemplo.

Otro ejemplo.