In today’s post, I would like to touch on the HTML DOM (Document Object Model). In building a web application, developers find themselves interacting with the DOM repeatedly. So what is the DOM?
The DOM at its most basic level is simply the pieces of the HTML page. There is terminology and methods associated with this interaction…
- Tree – The DOM is sometimes referred to as a tree. This is because it is hierarchal in nature and each piece of the DOM is connected to the other. The concept of a DOM tree gives a very visual picture of the structure of the document.
- Traversing the DOM – This is referencing moving around the DOM and interacting with each accordingly.
- Nodes – Each piece of the DOM is called a node. So an HTML tag is called an element node. So a paragraph tag (<p>) would be referred to as a p element node. Text on the page is also referred to as a node, but in this case, it is called a text node.
- DOM methods – The HTML DOM API has built in methods that allow interaction with the DOM. Here are a couple of examples:
- getElementById(); – allows the grabbing of pieces of the DOM based upon the ID of the DOM node.
- getElementsByTagName(); – allows the grabbing of pieces of the DOM based upon the node type. So a developer could grab all of the image tags (img) on a page. This returns the tags in an array data type.
In future posts, I will cover some more detailed DOM interactions, but one thing to keep in mind as you work with the DOM is how HTML works. For example, there are two main type of HTML elements…block and inline. The behavior of each of these can be altered by CSS, but it is important as a developer alters the DOM that they keep these aspects in mind.