DOM
Document Object Model 文档对象模型
什么是文档对象模型? — What is the Document Object Model?
DOM 是什么?
想象一下,你有一张房子的建筑蓝图,上面画着房子的每一个部分:墙、门、窗户、屋顶等等。DOM 就像是网页的“蓝图”。当你打开一个网页,浏览器会把网页的 HTML 代码(那些 <html>、<div>、<p>
标签)解析成一个树状结构,这个结构就是 DOM。它把网页里的每一个元素(比如标题、段落、图片)都整理得清清楚楚,让计算机(特别是 JavaScript)能找到它们、操作它们。
简单来说,DOM 是网页的骨架图,它把网页的内容变成一个个“节点”(node),这些节点就像蓝图上的标记点,互相之间还有父子关系、兄弟关系,形成一个大树。
|
|
在这个 HTML 里,DOM 会把它变成一个树形结构:
|
|
DOM 有什么用?
DOM 的牛逼之处在于,它让 JavaScript 能和网页互动。有了 DOM,JavaScript 就像一个装修工人,可以拿着网页的蓝图(DOM)去干活:
- 查看:找到某个节点,看看它是什么内容。
- 修改:比如把
<p>
的文字从“这是一个段落。”改成“这是新段落!”。 - 添加:在
<body>
里加一个新的<p>
节点。 - 删除:把某个节点去掉。
举个例子:你想做一个网页,用户点一个按钮,页面上的文字就变了。你可以用 JavaScript 写代码,通过 DOM 找到那个文字所在的节点,然后改它的内容。比如:
|
|
再比如,你想做一个待办事项列表,用户点按钮就能添加新任务。这也是通过 DOM 实现的:JavaScript 创建一个新节点(比如 <li>
),然后把它加到列表里。
DOM 是桥梁
所以,DOM 就像是网页(HTML)和 JavaScript 之间的“翻译官”或者“桥梁”。HTML 负责写出网页的内容和结构,DOM 把这些内容变成一个树形结构,JavaScript 通过 DOM 来动态地控制网页,让网页不再是静态的,而是可以互动、有变化的。
小结
用最简单的话说:
- DOM 是网页的树形蓝图,把每个元素都变成节点。
- JavaScript 通过 DOM 操作网页,可以改内容、加东西、删东西。
- 它让网页变得活起来,能根据用户的操作动态变化。