DynLayer Extensiones [Communes]

Estas son comunes adiciones las cuales tal vez querrás utilizar. Nota: estos ejemplos son mostrados para un DynLayers que se llama 'mylayer' pero estos funcionarán para todas la DynLayers con cualquier nombre.

Cuando desees utilizar estas funciones todo la que tienes que hacer es de incluir el fichero de dynlayer-common.js después del fichero dynlayer:

<SCRIPT LANGUAGE="JavaScript" SRC="dynlayer.js"></SCRIPT>
<SCRIPT LANGUAGE="JavaScript" SRC="dynlayer-common.js"></SCRIPT>

Fuente de Código

dynlayer-common.js

Cargando el Fichero Externo - load()

Este método es basado en la lección Fuente Externa de Ficheros.

Utilización del método load() :

mylayer.load('myfile.html',fn)  

El parámetro fn es opcional, este es utilizado para ejecutar algunas otras funciones o reportes cuando un fichero externo ha sido cargado enteramente en la página.

En el documento principal HTML debes de tener un IMarco (IFrame) escondido llamado "bufferFrame", este es utilizando para copiar los contenidos de un fichero externo dentro de una capa

<IFRAME STYLE="display:none" NAME="bufferFrame"></IFRAME>

El fichero externo html debe de llamar al método de DynLayer´s loadFinish(). Desde que IE, el documento principal se encuentra en un marco diferente, debemos de llamarle como "parent". Afortunadamente esto es compatible simultáneamente para Netscape porque en Netscape el documento es todo lo mismo, y en ese caso "parent" es un sinónimo con "document".

<BODY onLoad="parent.mylayer.loadFinish()">

Alerta: Este método no funcionara "as-is" Si todos los ficheros son todos para ser contenidos dentro de otro frameset. En ese caso necesitarás de mandar un parámetro adicional para el nombre del frame en lugar de "parent". Tampoco esto funcionará si cargas ficheros múltiples simultáneamente dentro de capas separadas. Esta función asume que nada mas se encuentra un IFrame, y así un solo fichero en una buffer-zone. Si deseas que se encuentren ficheros múltiples estar buffered como este, tendrás que tener IFrames separados, y también otro parámetro para determinar de cual frame hay que sacar los contenidos

Ejemplo : load.html [fuente]

Background Color - setbg()

Simplemente fija el color de fondo de la capa. Pon atención, usualmente tienes que tener la capa cortada, y a veces te encontrarás con problemas con el texto que se encuentra contenido adentro de la capa. Este te dejará encontrar toda "felicidad" con esta función:)

Utilizando el Método setbg():

mylayer.setbg('#ff0000')

Cambiando la Imagen - img()

Este método de solo una - línea puede ser utilizado en lugar de la función changeImage() de esta forma no te tendrás que preocupar sobre las referencias añadidas:

Utilización del Método img() :

myImgObject = new Image()
myImgObject.src = 'myimg-new.gif'

mylayer.img('myImg','myImgObject')

// imagen debe tener un NOMBRE asignado,los valores del indice no funcionara entre los dos browsers
<div id="mylayerDiv"><img src="myimg.gif" name="myImg"></div>

Tomando una Localización Relativa X ("Relative X") - getRelativeX()

Esta función puede ser utilizada para encontrar la localización actual de la capa (relativa al documento). Esto solamente tiene que ser utilizado cuando estas posesionando tu capa relatively

En orden de fijar los CSS para hacer una capa en posición relativa, puedes utilizar lo siguiente:

#mylayer {position:absolute;}   // no parte de la izquierda o arriba definida

css('mylayerDiv',null,null)  // en css() 
funcion nula,nula para x,y  significa posición relativa

Luego para encontrar la localización actual de la izquierda utiliza el método getRelativeX():

var x = mylayer.getRelativeX()

Tomando una Localización Relativa Y ("Relative Y") - getRelativeY()

Lo mismo que arriba:

var y = mylayer.getRelativeY()

Tomando el contenido de arriba - getContentHeight()

Cuando no especificas la altura en las CSS, siempre podrás obtener la altura actual de los contenidos de esa capa con utilizar el método getContentHeight() }. Nota que esto utiliza la misma táctica como se muestra en la lección Scrolling Concepts, sin embargo esa lección hace la llamada de verdadero para ese valor explícito

var h = mylayer.getContentHeight()

Tomando el contenido del ancho - getContentWidth()

Lo mismo que arriba:

var w = mylayer.getContentWidth()

Extensiones del DynLayer :

Home Próxima Lección: Métodos Wipe
copyright 1998 Dan Steinman