HTML DOM 之一:访问、修改、删除HTML内容
什么是 DOM?
DOM 是 W3C(万维网联盟)的标准。
DOM 定义了访问 HTML 和 XML 文档的标准:
“W3C 文档对象模型 (DOM) 是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。”
W3C DOM 标准被分为 3 个不同的部分:
- 核心 DOM - 针对任何结构化文档的标准模型
- XML DOM - 针对 XML 文档的标准模型
- HTML DOM - 针对 HTML 文档的标准模型
编者注:DOM 是 Document Object Model(文档对象模型)的缩写。
1、getElementById
<! DOCTYPE html> < html > < body > < p id="intro">Hello World!</ p > < p > DOM很有用 </ p > < p style="color: red; margin-left: 20px"> 1、getElementById的例子开始: </ p > <!--getElementById--> < script > x=document.getElementById("intro"); document.write("innnerHTML="+x.innerHTML); document.write("< p ></ p >"); document.write("firstChild.nodeValue="+x.firstChild.nodeName); document.write("< p ></ p >"); document.write("firstChild.nodeValue="+x.firstChild.nodeValue); document.write("< p ></ p >"); document.write("firstChild.nodeType="+x.firstChild.nodeType); document.write("< p ></ p >"); </ script > </ body > </ html > |
2、getElementsByTagName
<! DOCTYPE html> < html > < body > < p style="color: green; margin-left: 20px"> 2、getElementsByTagName的例子开始: </ p > <!--getElementsByTagName--> < script > x=document.getElementsByTagName("p"); document.write("x[1].innerHTML="+x[0].innerHTML); </ script > < div id="main"> < p >DOM 很有用!</ p > < p >本例演示 < b >getElementsByTagName</ b > 方法。</ p > </ div > < script > x=document.getElementById("main").getElementsByTagName("p"); document.write("div 中的第一段的文本: " + x[0].innerHTML); </ script > </ body > </ html > |
3、修改HTML元素
<! DOCTYPE html> < html > < body > < p style="color: rgb(0,0,255); margin-left: 20px"> 3、修改 HTML 元素的例子开始 </ p > <!--修改 HTML 元素--> < p id="p1">Hello World!</ p > < script > document.getElementById("p1").innerHTML="New text!"; </ script > < p style="color: rgb(255,255,0); margin-left: 20px"> </ body > </ html > |
4、向HTML DOM中添加新元素
<! DOCTYPE html> < html > < body > < p style="color: rgb(255,255,0); margin-left: 20px"> 4、向 HTML DOM 添加新元素的例子开始 </ p > <!--向 HTML DOM 添加新元素--> < div id="div1"> < p id="p1">This is a paragraph.</ p > < p id="p2">This is another paragraph.</ p > </ div > <!--如需向 <p> 元素添加文本,您首先必须创建文本节点, 然后您必须向 <p> 元素追加文本节点, 最后,您必须向已有元素追加这个新元素。 --> < script > var para=document.createElement("p"); var node=document.createTextNode("This is new."); para.appendChild(node); var element=document.getElementById("div1"); element.appendChild(para); </ script > </ body > </ html > |
5、删除HTML元素
<! DOCTYPE html> < html > < body > < p style="color: rgb(0,255,255); margin-left: 20px"> 5、删除已有的 HTML 元素的例子开始 </ p > < div id="div2"> < p id="p1">This is a paragraph.</ p > < p id="p2">This is another paragraph.</ p > </ div > < script > var parent=document.getElementById("div2"); var child=document.getElementById("p1"); parent.removeChild(child); </ script > </ body > </ html > |
提示:能否在不引用父元素的情况下删除某个元素?
很抱歉。DOM 需要了解您需要删除的元素,以及它的父元素。
这里提供一个常用的解决方法:找到您需要删除的子元素,然后使用 parentNode 属性来查找其父元素:
var child=document.getElementById("p1"); child.parentNode.removeChild(child);
6、替换元素
<! DOCTYPE html> < html > < body > < p style="color: rgb(0,255,255); margin-left: 20px"> 6、替换元素的例子开始 </ p > < div id="div3"> < p id="p1">This is a paragraph.</ p > < p id="p2">This is another paragraph.</ p > </ div > < script > var parent=document.getElementById("div3"); var child=document.getElementById("p1"); var para=document.createElement("p"); var node=document.createTextNode("This is new."); para.appendChild(node); parent.replaceChild(para,child); </ script > </ body > </ html > |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏