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()

 

posted @   Jackie-Song  阅读(214)  评论(0编辑  收藏  举报
编辑推荐:
· 基于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)
点击右上角即可分享
微信分享提示