HTMLpointHTMLpoint HTMLpoint.com


 El DOM de DHTML  

 por Massimiliano Valente

El DOM (Document Object Model) fue introducido por primera vez en 1995 por Netscape, que lo implementó en la versión 2 de su navegador. El nacimiento de este modelo coincidió con la creación de un lenguaje de scripting (JavaScript). El primer modelo de DOM era, sustancialmente, una jerarquía de instancias de objetos JavaScript, mediante la cual los elementos de la página estaban en relación descendente entre sí.

Con la versión 3.0, Netscape extendió el DOM a través de la introducción de otros objetos para representar: layer, marcos, plug-in, applet, imágenes, enlaces y anclajes, sin modificar mucho, sin embargo, la estructura original.

Microsoft introdujo su propio lenguaje de scripting (Visual Basic Scripting Edition, VBScript) en la versión 3 de Internet Explorer, y el DOM adoptado era similar al del adversario Netscape.

Con la cuarta versión de su navegador, Microsoft extendió el DOM a todos los contenidos y marcas de página, y se aproximó a las recomendaciones del W3C en este sentido.

Actualmente, el DOM implementado en MSIE 4 es más completo que el propuesto por Netscape. El nuevo DOM de MS es accesible con JavaScript y VBScript e incluye el objeto "all", que representa el conjunto de todos los elementos de una página. En la versión puesta a punto por Netscape, los eventos quedan limitados a objetos específicos, mientras que Microsoft abre los elementos de una página a todos los eventos, lo que permite el acceso a todos los atributos de un elemento, incluidos color, fondo y fuente.

Dentro del DOM, no todos los objetos se encuentran al mismo nivel, sino que cada uno de ellos existe por estar relacionado con conjuntos de otros objetos.



El objeto de primer nivel es "window", el cual, a su vez, contiene el objeto "document". El objeto "window" expone la información relativa al documento y al actual URL, así como a los URL visitados. Como los documentos HTML tradicionales, los FRAMESET se exponen mediante el elemento "document", pero a diferencia de los primeros subdividen la pantalla en varios marcos. Esta peculiaridad hace que cada FRAMESET sea expuesto como otro objeto "window".

El modelo de objetos propuesto por Microsoft, si bien es innovador respecto al pasado, no responde plenamente a las recomendaciones del W3C, mediante las cuales se pretende lelgar a un estándar universal que:

pueda ser utilizado por cualquier navegador en cualquier plataforma;
sea independiente del lenguaje, permitiendo acceder al documento sin fijar su estructura;
sea accesible al mayor número posible de usuarios y no discrimine a quienes no hacen uso de navegadores gráficos;
responda a requisitos de seguridad y respeto de la intimidad.
Es posible, gracias a las potencialidades de los estilos dinámicos, modificar automáticametne el aspecto de un documento a intervalos de tiempo. En el ejemplo que figura a continuación, los estilos adoptados para diversas partes de texto están asociados a un reloj que, en este caso particular, genera un texto elástico, que hasta ahora podía obtenerse sólo con applet Java o GIF animados:


Muestra el ejemplo práctico


La propiedad "CSS letter-spacing" modifica el elemento según un reloj.

El evento "onLoad" se genera una vez que la página se ha cargado pero antes de la visualización de la misma. El evento "onUnLoad" está asociado a la petición de una nueva página por el navegador.

Los estilos dinámicos, además de dotar de mayor funcionalidad a las páginas web, añaden elementos interactivos que el HTML estándar no proporciona. Este aspecto constituye la mayor ventaja de los nuevos instrumentos de DHTML en general y de los estilos dinámicos en particular.

  Vuelve a principio de página