什么是 DOM?

DOM(文档对象模型)是用于表示和操作 HTML/DOM 结构的标准接口。它允许 JavaScript 动态访问、更新或添加网页内容。

DOM操作 简单 DOM 基础 JavaScript

DOM(Document Object Model),即文档对象模型,是W3C制定的一项跨平台编程接口标准,其作用是将网页结构转换为树状对象的表示,以便脚本语言(如JavaScript)能动态访问、添加、修改或删除网页内容、结构和样式。

关键点概述:

  1. 基本概念:
    • DOM 定义了网页的结构化模型,将HTML或XML文档视为一个由节点组成的树状数据结构。在这个树中,根节点为document对象,后续节点包括元素节点(如<div>)、属性节点、文本节点等。
    • 例如,当浏览器加载页面时,会解析HTML并构建DOM树。
  2. 核心组成部分:
    • Document(文档对象): 作为入口点,提供操作整个文档的方法,如document.getElementById()来获取指定ID的元素。
    • Element(元素对象): 代表HTML标签,如<p><div>,允许操作属性或事件监听。
    • Node(节点对象): 是所有DOM元素共有的接口,类型包括元素节点(nodeType=1)、文本节点(nodeType=3)等12种,每种有其相关属性和方法(如appendChild())。
  3. 主要作用:
    • DOM使JavaScript与网页交互成为可能。脚本可使用DOM接口实现动态效果,例如查找并修改元素:
      // 查找所有段落元素并更新内容
      const paragraphs = document.querySelectorAll("p");
      paragraphs.innerHTML = "动态更新文本";
      

      这体现为控制布局、响应用户事件等场景。

  4. 技术特性:
    • 标准性: 基于W3C DOM标准(常用DOM 3级以上版本),确保跨浏览器一致性(尽管少数兼容问题如IE的COM实现需注意)。
    • 分离模型: DOM不是JavaScript语法,而是独立的标准编程接口。JavaScript调用DOM API来实现操作;例如,window.document访问文档对象模型。

简而言之,DOM 将静态文档转变为可编程的动态模型,是前端开发中页面操作的核心机制。