什么是DOM?
DOM的定义
DOM(Document Object Model 文档对象模型)是一个跨平台、语言中立的接口,允许程序和脚本动态访问和更新文档的内容、结构和样式。通常与HTML和XML文档一起使用,DOM将文档表示为一棵由节点和对象组成的树,这些节点和对象可以通过编程语言(如JavaScript)进行操作。
DOM的结构
1、节点树:DOM将文档表示为一个树形结构,其中每个节点代表文档的一部分,例如元素、属性、文本等。最顶层的节点是文档节点(document),它是其他所有节点的根。
<!DOCTYPE html> <html> <head> <title>文档树</title> </head> <body> <h1>你好</h1> <p>欢迎来到71muke网</p> </body> </html>
上述HTML文档的DOM树结构如下:
document ├── html │ ├── head │ │ └── title │ │ └── "文档树" │ └── body │ ├── h1 │ │ └── "你好" │ └── p │ └── "欢迎来到71muke网"
2、节点类型:DOM中的节点有多种类型,每种类型用于表示文档中的不同部分。常见的节点类型包括:
元素节点(Element Node):代表HTML或XML标签。
属性节点(Attribute Node):代表元素的属性。
文本节点(Text Node):代表元素或属性中的文本内容。
文档节点(Document Node):整个文档的根节点。
DOM的核心概念
元素和节点:DOM中的每个部分都是一个节点,节点之间有父子关系和兄弟关系。通过遍历和操作节点,可以动态修改文档内容。
属性和样式:通过DOM,可以获取和设置元素的属性和样式。例如,可以通过JavaScript更改元素的class、id、src等属性,也可以更改CSS样式。
事件处理:DOM提供了处理用户交互的能力。例如,可以通过事件监听器来响应用户的点击、键盘输入、鼠标移动等事件。
DOM操作使用流程
以下是一些常见的DOM操作示例:
1、获取元素:
var element = document.getElementById('myElement'); // 通过ID获取元素 var elements = document.getElementsByClassName('myClass'); // 通过类名获取元素集合 var element = document.querySelector('.myClass'); // 通过CSS选择器获取第一个匹配的元素
2、创建和添加元素:
var newElement = document.createElement('div'); // 创建一个新的div元素 newElement.textContent = 'Hello World'; // 设置元素的文本内容 document.body.appendChild(newElement); // 将新元素添加到文档的body中
3、修改元素属性:
var element = document.getElementById('myElement'); element.setAttribute('class', 'newClass'); // 设置元素的class属性 element.style.color = 'red'; // 修改元素的样式
4、事件处理:
var button = document.getElementById('myButton'); button.addEventListener('click', function() { alert('Button clicked!'); }); // 添加点击事件监听器
DOM是javascript的核心灵魂和技术,对于前端开发工程师来说是必须掌握的技能和要求。
需要购买本课才能留言哦~