Una vez que hayas aplicado el DynLayer a una capa, tendrás una forma unificada para referirse a la capa para los dos Netscape y IE. Desde ese punto en adelante puedes utilizar el DynLayer para recuperar y cambiar las propiedades de la capa utilizando un solo comando.
En casi todos los casos es solamente necesario de tener un control de movimiento de la capa. Las propiedades de corazón (core) del Dynlayer proveen la fundación para controlar la localización de la capa.
La Propiedad de css:
La propiedad css es la forma que tienes que referir directamente las propiedades CSS de la capa. Es el equivalente de como he utilizado los indicadores en lecciones anteriores. Para Netscape indica al document.layer[id], y para IE indica al document.all[id].style
Cuando necesites de recuperar o cambiar cualquiera de las propiedades de CSS tienes que referir a la propiedad de esta manera:
objectName.css.propertyName
Por ejemplo para recuperar el z-index de un "mylayer" DynLayer tendrás que utilizar:
mylayer.css.zIndex
Esto se puede hacer para cualquiera de las propiedades CSS. Como sea en practica es raramente necesario de llamar las propiedades de CSS manualmente porque DynLayer se encarga de cuidar a casi todas: izquierda "left", arriba "top", visibilidad " visibility", y valor de recorte " clip value". La única propiedad que alguna vez tendrás que utilizar es zIndex.
La Propiedad Elm :
Esto apunta al objeto actual elemento DHTML. Para Nestcape este es equivalente a la propiedad css, pero para IE apunta al document.all [id] en lugar al document.all[id].style. Para animación básico DHTML y parecido esta propiedad no es necesaria, pero hay situciones cuando si se necesita (chequea EL Using Layer-based Events y Conceptos Scroll lecciones para un ejemplo).
Las propiedades x y y siempre contienen la actual localización de la capa. Estas son equivalentes de como he estado utilizando las propiedades xpos y ypos en lecciones anteriores. Utilizando estas propiedades separadas es una preferencia personal mía porque siento que es mas limpio (y también más eficiente) de accesar la localización de una capa como una propiedad.
Para recuperar la localización actual de la capa tienes que utilizar el uno o el otro:
objectName.x o objectName.y
Como antes, tienes que asegurar que las propiedades X y Y están de acuerdo con las actuales propiedades izquierda "left" y arriba "top" con solo copiar los valores:
objectName.x += 10 objectName.left = objectName.x
Pero casi nunca tendrás que hacer eso porque he incluido los métodos moveTo() or moveBy() los cuales cambian de localización de la capa para ti.
En lugar de tener las propiedades X y Y puedes escribir opcionalmente tus propios métodos como tomeIzquierda "getLeft()" o tomeArriba "getTop()" para extraer la localización actual. Pero puedes hacer eso tu mismo si tu lo deseas.
Las propiedades de w y h:
Justamente como puedes recuperar la localización de la capa utilizando X y Y , puedes también recuperar el ancho " width" y la altura " height" de la capa utilizando W y H:
objectName.w o objectName.h
La propiedad doc:
La propiedad doc puede ser utilizada cuando deseas accesar otros elementos adentro de la capa como imágenes y formularios. En Netscape apunta al document.layers[id].document, pero en IE apunta al documento principal. Esto es necesario porque Netscape controla los contenidos de la capa como documentos separados.
Elementos adentro de la capa deben de ser llamados por:
mylayer.doc.elementName
// changing images mylayer.doc.images["myImage"].src = newimage.src // get form value mylayer.doc.myform.myformfield.value
Lee las lecciones Cambiando Imágenes y Trabajando con Formularios para mas explicaciones específicas en esos tópicos. También hay un metodo de extensión image() .
La propiedad obj
La propiedad obj es un tira de referencia para el Dynlayer. Esta propiedad es necesaria cuando unos métodos utilizan setTimeouts, o eval´s para llamarse a el mismo. Estos dos informes solamente acepta tiras (strings). Por ejemplo no puedes tener un setTimeout como método cuando es fijado de esta manera:
setTimeout(this + ".methodName()",100)
En lugar tienes que utilizar la propiedad obj:
setTimeout(this.obj + ".methodName()",100)
La propiedad obj es utilizada para métodos añadidos encima como los métodos de slide y wipe, como también otros objetos que utiliza el DynLayer.
Ver dynlayer-properties1.html Para un ejemplo de una imagen que cambia y de una recuperación del valor de forma utilizando las propiedades Dynlayer. [source]
Casa | Próxima Lección: DynLayer Mouse Events |