Dom 的理解和操作
dom 文本对象模型
12种节点类型
一、node类型 js中所有节点类型都继承自node类型 每个节点都有一个nodeType属性,表明节点类型;判断节点类型,if(somenode.nodeType==Node.ELEMENT_NODE)
1要了解节点特性需要nodeName 和nodeValue ,在使用前需要验证节点的类型 somenode.name的值是元素标签名,somenode.value始终为null。测试如下:
<body>
<div id ="node"></div>
</body>
</html>
<script>
if (document.getElementById("node").nodeType ==1) {
alert( document.getElementById("node").nodeName) //DIV
alert( document.getElementById("node").nodeValue) //null
}
</script>
2节点关系childNodes parentNodes
nextSibling previousSibling firstchild lastchild
<body>
<div id ="node">
<div></div>
</div>
</body>
</html>
<script>
var somenode = document.getElementById("node")
if (somenode.nodeType ==1) {
alert(somenode.nodeName) //DIV
alert(somenode.nodeValue) //null
alert(somenode.childNodes[1]) // htmlelementdiv
}
</script>
3.操作节点
appendchild()
insertBefore(要插入的节点,作为参照的节点(null 最好一个)(somenode.firstchild 第一个))
replaceChild cloneNode(blooem)
二、document类型
nodeType=9 nodename#document
1.文档的子节点可以是 documentType Element comment
2.文档信息 document.title URL domain // referrer
3.查找元素 getElementById() getElementsByTagName()返回nodelist getElementByName
4.文档写入 write( ) writeln() open() close()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)