• Skip to primary navigation
  • Skip to content

Mauda

IT, Java and Music

Graduação   SCJP   Mestrado
  • Apresentação
  • Certificação Java
  • JPA
    • Exceptions
  • JSF
  • Versionamento
  • Contato

Html DOM – Básico

November 23, 2015 by Mauda Leave a Comment

Conteúdo do Post:
  1. O que é DOM?
  2. Node Tree
  3. NODES
  4. Outras Tecnologias
  5. finnaly{

Olá Pessoal, tudo bom?

No artigo de hoje iremos descrever um pouco sobre o Html DOM, ou Html Document Object Model que nada mais é que uma estrutura de dados do tipo árvore que abriga todas as tags de um documento de markup language como o HTML ou XML.

O que é DOM?

O Document Object Model é uma interface neutra, independente de plataforma ou linguagem, que permite a programas ou scripts acessar dinamicamente o conteúdo, estrutura e estilo de documentos. O documento pode ser processado posteriormente e o resultado deste pode ser incorporado na página em apresentação. ((What is the Document Object Model? – link))

Assim o DOM apresenta um documento HTML como uma estrutura de dados do tipo Arvore (Tree). Resumindo o DOM é um padrão para auxiliar como obter, mudar, adicionar ou deletar elementos de um documento HTML. Cada elemento é chamado de node-tree.

Node Tree

O Html DOM auxilia a representação do documento HTML. Como é representado em forma de árvore, a partir de sua raiz, qualquer nodo pode ser acessado. Observe o código HTML abaixo:

XHTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<html>
<head>
<title>Documento HTML Teste</title>
</head>
<body>
<form id="j6">
<div id="j6:j7">
<div id="j6:j7_header">
Documento HTML Teste
</div>
<div id="j6:j7_content">
<button id="j6:j9" type="submit">
Pesquisar
</button>
</div>
</div>
</form>
</body>
</html>

Esse código irá gerar a tela descrita na Figura 01, a partir do parser em um browser:

Figura 01 – Tela gerada pelo código html

NODES

Em uma árvore, os Nodos (Nodes) possuem uma relação hierárquica entre si. Assim as seguintes afirmações são verdadeiras:

  • Em uma arvore, o nodo do topo, nodo raiz, é chamado de Root Node
  • Cada nodo, exceto o Root, possui exatamente um nodo pai (Parent Node)
  • Um nodo pode possuir qualquer número de nodos filhos (Child Node), até mesmo zero
  • Um nodo que possua zero nodos filhos, ele é chamado de nodo folha (Leaf Node)
  • Nodos irmãos (Siblings Nodes) são nodos que possuem o mesmo pai

A Figura 02 representa uma parte da arvore apresentada na Figura 03, com os relacionamentos entre os Nodos.

Figura 02 – Relacionamento entre os Nodes da NodeTree da Figura 03

Assim o código irá gerar a arvore DOM representada na Figura 03:

Figura 03 – Representação gráfica da Arvore DOM do código HTML

Dessa Figura 03 podemos obter as seguintes afirmações:

  • O node <html> não possui Parent Node, sendo chamado de Root Node
  • O node <html> possui dois Child Nodes, <head> e <body>
  • Os nodes <head> e <body> possuem como Parent Node o node <html>
  • Os nodes <head> e <body> são Siblings Nodes
  • O node <head> possui um Child Node, o node <title>
  • O node <title> possui um Child Node, o node texto “Documento HTML Teste“
  • O node texto “Pesquisar” possui como Parent Node o node <button>

Outras Tecnologias

Nem sempre escreveremos um código puramente em HTML (Se torna muito improdutivo fazer esse tipo de coisa). Assim existem diversas, inúmeras, tecnologias que trazem componentes codificados em algo parecido com HTML. Somente citando o mundo Java, temos Java Server Pages, Java Server Faces, Struts, Spring como as mais famosas.

O que todas essas tecnologias possuem em comum? Dentro destas existe um “Parser”. Ou seja, de um conversor que obtém esse código próprio da tecnologia, criado pelo desenvolvedor, com todos os componentes e recursos que essas bibliotecas possuem, e gera um código HTML que pode ser interpretado por qualquer browser, sem maiores problemas. E como é um documento HTML ele irá gerar essas informações no padrão DOM.

Assim por mais que possa parecer simplório esse artigo, ele vem elucidar algo muito básico, que é a estruturação do código HTML que será interpretado pelo browser. Assim ao combinar outros aspectos das bibliotecas podemos ocasionar erros que podemos não entender o que está ocorrendo senão observarmos esse padrão, principalmente quando um desses aspectos é o AJAX.

finnaly{

Esse é um artigo base para ajudar nas explicações de outros artigos, assim estarei utilizando deste quando estiver tratando sobre erros na Árvore DOM.

Duvidas ou sugestões? Deixe seu feedback! Isso ajuda a saber a sua opinião sobre os artigos e melhorá-los para o futuro! Isso é muito importante!

Até um próximo post!

Filed Under: HTML Tagged With: DOM, html, Markup Language

About Mauda

Mestre em Informática, Analista de Sistemas, Professor, SCJP e Baterista. Desde 2002 trabalhando no mundo Java e ensinando pessoas sobre desenvolvimento de sistemas. Mais informações

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Advertisements

Copyright © 2025 · Genesis Framework · WordPress · Log in