45 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
title: HTML Dom
 | 
						|
---
 | 
						|
## HTML Dom
 | 
						|
 | 
						|
With the HTML DOM, JavaScript can access and change all the elements of an HTML document.
 | 
						|
 | 
						|
When a web page is loaded, the browser creates a **D**ocument **O**bject **M**odel of the page.
 | 
						|
 | 
						|
The HTML DOM model is constructed as a tree of Objects:
 | 
						|
 | 
						|
Each element in the DOM is also called a node.
 | 
						|
 | 
						|
```html
 | 
						|
<html>
 | 
						|
<head>
 | 
						|
  <title> My title </title>
 | 
						|
</head>
 | 
						|
<body>
 | 
						|
  <a href="#">My Link</a>
 | 
						|
  <h1> My header </h1>
 | 
						|
</body>
 | 
						|
</html>
 | 
						|
 | 
						|
```
 | 
						|
 | 
						|
The DOM for the above HTML is as follows: 
 | 
						|
 | 
						|

 | 
						|
 | 
						|
With the object model, JavaScript gets all the power it needs to create dynamic HTML:
 | 
						|
 | 
						|
* JavaScript can change all the HTML elements in the page
 | 
						|
* JavaScript can change all the HTML attributes in the page
 | 
						|
* JavaScript can change all the CSS styles in the page
 | 
						|
* JavaScript can remove existing HTML elements and attributes
 | 
						|
* JavaScript can add new HTML elements and attributes
 | 
						|
* JavaScript can react to all existing HTML events in the page
 | 
						|
* JavaScript can create new HTML events in the page
 | 
						|
 | 
						|
#### More Information:
 | 
						|
 | 
						|
<a href='https://www.w3schools.com/js/js_htmldom.asp' target='_blank' rel='nofollow'>W3C - HTML DOM</a>
 | 
						|
 |