DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral...

30
DOM Document Object Model Fernando Rodrìguez

Transcript of DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral...

Page 1: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM Document Object Model

Fernando Rodrìguez

Page 2: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Que es DOM

Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar el contenido, estructura y estilo de los documentos.

Una interfaz de programación para XML Un estandar W3C Un modelo de objetos para XML

Page 3: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Origen del DOM

Recomendaciones HTML (HTML 2.0-4.0)– 1995/1999– Separar el contenido de la presentaciòn mediante

hojas de estilo– Respuesta a las demandas de usuarios, por lo

que se aumentaba el nùmero de etiquetas

Page 4: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Origen del DOM

Recomendaciones XML– 1998 se aprobò la recomendaciòn XML 1.0

XHTML– 2000 aprobaciòn de XHTML 1.0– 2002 XHTML segunda ediciòn

Page 5: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Origen del DOM

ECMAScript– (European Computer Manufacturers Association)– Normas ECMA-262 y ECMA-357 (1998/2004)– Javascript 1.0 incorporaba una forma de acceder

y manipular los elementos de la pàgina y recibiò el nombre de DOM nivel 0.

DHTML

Page 6: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Requerimientos generales

No dependiende del lenguaje y de la plataforma Un nùcleo aplicable a HTML, CSS y XML Construcciòn y destrucciòn del documento No se requiere IU para implementar el modelo

Page 7: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM nivel 1- Navegación Estructural

Núcleo: La sección del Núcleo DOM1 provee un conjunto de bajo nivel de interfaces que pueden representar a cualquier documento estructurado

HTML: La sección de HTML nivel 1 provee interfaces adicionales de más alto nivel que se utilizan junto con las interfaces definidas en el nivel 1 del núcleo para proporcionar una vista conveniente de un documento HTML.

Interfaces DOM1: incluyen la interfaz para el Documento, Nodos, Atributos, Elementos, y el texto.

Page 8: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM nivel 1- Manipulación de documentos

Proveer una manera de agregar, remover y cambiar elementos y/o etiquetas en la estructura del documento.

Proveer una manera de añadir, remover o cambiar los atributos en a estructura del documento.

Las operaciones o su combinación deberán asegurar y restaurar la consistencia antes de que hagan el return.

Page 9: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM nivel 1- Manipulación de contenido

Proveer una manera de determinar el elemento contenedor desde cualquier parte del documento

Proveer una manera de navegar el contenido

Page 10: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Estructura DOM

1. Elemento Raíz2. Cualquier nodo excepto el raíz tiene exactamente un nodo padre3. Un nodo puede tener cualquier número de hijos4. Una hoja es un nodo con ningún hijo5. Siblings. Son nodos con el mismo nodo padre

Page 11: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-DOCUMENT

Page 12: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-NODO (TIPOS)

Page 13: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-NODO(DEFINICION)

Page 14: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

NODOS-COMPARATIVO

Page 15: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-NODELIST

Page 16: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-NAMEDNODEMAP

Page 17: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

COM-CHARACTERDATA

Page 18: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-ATTRIBUTE

Page 19: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-ELEMENT

Page 20: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-TEXT

Page 21: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM-COMMENT Y CDATA

Page 22: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Ejemplos

Tips:1. Un error común es creer que el elemento contiene cierto texto, lo cierto es que el texto es almacenado

en un nodo texto

Page 23: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM nivel 2- Modelo de eventos

El modelo deberá ser lo suficientemente rico para crear documentos completamente interactivos.

Todos los elementos serán capaces de generar eventos Proveer eventos de interfaz y lógicos El mecanismo de eventos permitirá el overriding del

comportamiento por default El modelo de eventos proveerá un mecanismo por el cual

eventos para elementos específicos podrán ser recibidos por un ancestro en la jerarquía DOM

Los eventos deberán ser sincronos

Page 24: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Tipos de eventos

UI events – Eventos de la inerfaz de usuario, generados por un dispositivo externo

UI Logical events – Independientes del usuario,como focus, cambio de mensajes o triggers.

Mutation events – Eventos causados por una acci´n que modifica la estructura del

documentos. Capturing

– El proceso por el cual un evento puede ser manejado por un padre del objetivo del evento antes que sea manejado por este.

Bubbling – El proceso por el cual un evento se propaga a traves de los ancestros

despues de haber sido manejado por el objeto generador.

Page 25: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM nivel 2- Modelo de hojas de estilo

El modelo deberá ser extensible a otros formatos en un futuro Habra un modelo de hojas de estilos embedido, donde el core

podrà ser aplicable a otros lenguajes de estilos. Los estilos podran ser agregados, removidos o modificados Lo anterior aplica para hojas de estilos ligadas, importados o

alternativas.

Page 26: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM nivel 2- Modelo de rangos

Vista lineal– Permitirá consultas y ediciones de funcionalidad basados

en un rango de texto en lugar de un árbol de nodos

Live– Ediciones en el rango modificando el árbol subyacente

Operaciones– Creación de un objeto rango– Extracción de texto desde un rango con o si etiquetas– Inserción y borrado de texto dentro de un rango– Inserción borrado de cierta estructura dentro de un rango

Page 27: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM nivel 2- Modelo de recorrido

Deberá de ser capaz de visualizar vistas filtradas sin comentarios o referencias.

Tener un iterador robusto

Page 28: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Ejemplos

Page 29: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

DOM nivel 3- Requerimientos generales

Modificaciones al núcleo para solucionar problemas de los niveles anteriores

Modificaciones al modelo de eventos Lectura y escritura de documentos (XML-

estructura de árbol)

Page 30: DOM Document Object Model Fernando Rodrìguez. Que es DOM Dom es una plataforma o interfaz neutral que permite a los programas y scripts accesar o modificar.

Frameworks

DOJO