En este documento se describe como es el código JavaScript que hay que añadir a un documento HTML para que una parte del mismo se pueda contraer y expandir
En algunas páginas que hay en la Red, existe la posibilidad de contraer o expandir sucesivamente una parte del cuerpo de la página, normalmente cuando se incluyen códigos o textos a modo de ejemplo que ilustra algún aspecto explicado en el texto.
Este documento muestra como se puede conseguir ese efecto.
Para que el proceso funcione, se necesitan varios pasos
<pre id="CodigoPrograma01" style="display: none;"> hola textoContraible Linea uno hola textoContraible Linea dos </pre>
Comentarios
<p> <a id="xCodigoPrograma01" onclick="MostrarOcultar('CodigoPrograma01');" href="#_self"> + Mostrar </a> </p>
Comentarios
<!-- ''''''''''''''' JavaScript ''''''''''''''' --> <!-- Indicar que en esta pagina hay codigo JavaScript --> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <!-- Codigo JavaScript interno de este documento --> <script language="javascript" type="text/javascript"> //<![CDATA[ <!-- //........................................................................... // Funcion que muestra u oculta un texto // trabaja utilizando la interfaz DOM //........................................................................... function MostrarOcultar( ref ) { // Nodo del documento que se [muestra /oculta] // Tiene que tener un ID unico var nodoContraible = document.getElementById(ref); // Nodo que contiene el [enlace] que maneja el que se [muestra /oculta] // DEBE tener el mismo ID que el nodo [nodoContraible] pero precedido por una x var xNodoDelEnlace = document.getElementById("x" + ref); if (nodoContraible.style.display =='none') { xNodoDelEnlace.innerHTML = ' - Ocultar'; nodoContraible.style.display ="block"; } else { xNodoDelEnlace.innerHTML = ' + Mostrar '; nodoContraible.style.display ='none'; } } // --> //]]> </script>
Comentarios
+ Mostrar Ejemplo uno contraido al iniciar
El código mostrado es un código básico, la realidad es que (normalmente) queremos que la página, el documento resulte vistoso, para lo que tenemos que aplica estilos,
Por ejemplo, aplicaremos en el nodo <head></head> las siguientes líneas de estilo
<!-- '''''''''''''' ESTILOS CSS ''''''''''''''' --> <meta http-equiv="Content-Script-Style" content="text/css" /> <link media="all" rel="stylesheet" type="text/css" href="../cssJS/2008.css" /> <style type="text/css" media="all" > /*<![CDATA[*/ <!-- /* estilo para expandir contraer pre */ .expandirContraerCSS { font-family:Arial helvetica; color:#AA0000; font-weight:bold; text-decoration: none; font-size: smaller; border-bottom: #cccccc 1px solid; background-color: #fbedbb; width:100%; margin-bottom: 0px; margin-top: 0px; } .pre_titulo { color: #ffffff; background-color: #006699; font-weight: bold; text-align: left; margin-top: 0.5cm; margin-bottom: 0cm; } pre { background-color:#FBEDBB; padding-right: 7pt; padding-left: 7pt; padding-bottom: 7pt; padding-top: 7pt; font-family: "Courier New", Courier, mono; font-size:9pt; white-space: pre; overflow:auto; } --> /*]]>*/ </style>
<!-- Enlace para llamar a la funcion --> <p class="expandirContraerCSS"> <a id="xCodigoPrograma02" onclick="MostrarOcultar('CodigoPrograma02');" href="#_self" class="expandirContraerCSS" > + Mostrar </a> </p>
Comentarios
<!-- Texto con un titulo que siempre tiene que estar visible --> <p class="pre_titulo"> Este es un TITULO, siempre visible, con fondo azulon y letras blancas </p> <!-- Zona que se oculta --> <pre id="CodigoPrograma02" style="display: block; margin-top: 0px;"> hola textoContraible Linea uno hola textoContraible Linea dos </pre>
Cometarios
Este es un TITULO, siempre visible, con fondo azulon y letras blancas
hola textoContraible Linea uno hola textoContraible Linea dos
En el siguiente enlace hay un fichero ZIP que contiene ejemplo
* Fichero con el código de ejemplo: [ContraerExpandir_Ejemplo.zip ] [ 2,42 KB ]
* MD5 checksum: [CD38661FB897E16BB4345978D20D4B1F]
* MD5 checksum: Información [http://www.elguille.info/colabora/MD5_checksum.aspx]
© 1997 - - La Güeb de Joaquín | |||||
Joaquin Medina Serrano
|
|||||
|