返回

DOM 文档对象模型入门指南

前端

DOM 简介及相关 API

DOM(Document Object Model,简称 DOM)是 W3C 组织推荐的处理可扩展标记语言(HTML 或 XML)的标准编程接口。它为开发者提供了一套操作 HTML 或 XML 文档的 API,使他们能够动态地修改文档结构、样式和行为。

DOM 的基本概念

  • 元素 :DOM 将 HTML 或 XML 文档中的每一个元素都表示为一个对象,这些对象称为元素节点。
  • 节点 :元素节点只是 DOM 中众多节点类型中的一种,其他类型的节点包括属性节点、文本节点、注释节点等。
  • 属性 :每个元素节点都具有一个属性集合,属性节点就是这些属性的表示。
  • 事件 :当用户与网页交互时,例如点击、滚动或移动鼠标时,就会触发事件。事件对象包含有关事件的信息,如事件类型、目标元素和鼠标位置。
  • 文档加载 :当浏览器加载 HTML 或 XML 文档时,会创建一个 DOM 树来表示该文档。这个过程称为文档加载。
  • 元素选择器 :元素选择器是用于选择 HTML 或 XML 文档中元素的语法。

DOM 的相关 API

DOM 提供了丰富的 API,允许开发者动态地修改文档结构、样式和行为。这些 API 包括:

  • document :document 对象是 DOM 的根节点,它代表整个 HTML 或 XML 文档。
  • getElementById :getElementById() 方法可通过元素的 id 属性来获取元素节点。
  • getElementsByTagName :getElementsByTagName() 方法可通过元素的标签名来获取元素节点的集合。
  • createElement :createElement() 方法可创建一个新的元素节点。
  • appendChild :appendChild() 方法可将一个元素节点添加到另一个元素节点的子节点集合中。
  • removeChild :removeChild() 方法可从一个元素节点的子节点集合中删除一个元素节点。
  • setAttribute :setAttribute() 方法可设置元素节点的属性值。
  • getAttribute :getAttribute() 方法可获取元素节点的属性值。
  • addEventListener :addEventListener() 方法可为元素节点添加事件监听器。

DOM 的实际应用

DOM 在前端开发中有着广泛的应用,包括:

  • 动态更新页面内容 :DOM 可以用来动态更新页面内容,例如,在用户输入时更新表单字段的值,或者在用户点击按钮时显示或隐藏元素。
  • 创建交互式网页 :DOM 可以用来创建交互式网页,例如,使用 JavaScript 来实现拖放功能,或者创建响应用户输入的动画效果。
  • 开发单页面应用程序 :DOM 可以用来开发单页面应用程序(SPA),SPA 是一种在同一页面上动态加载和更新内容的应用程序,这种应用程序通常使用 JavaScript 和 AJAX 技术实现。

总之,DOM 是前端开发中必不可少的工具,掌握 DOM 的基本概念和相关 API 可以帮助开发者创建更强大、更交互的网页应用程序。