JavaScript获取节点类型、节点名称和节点值

DOM节点信息包括 节点类型(nodeType) 节点名称(nodeName) 节点值(nodeValue)

节点类型

DOM节点中,每个节点都拥有不同的类型。

W3C规范中常用的 DOM节点类型有以下几种:
节点类型 说明
元素节点每一个HTML标签都是一个元素节点,如 <div> 、 <p>、<ul>等1
属性节点元素节点(HTML标签)的属性,如 id 、class 、name 等。2
文本节点元素节点或属性节点中的文本内容。3
注释节点表示文档注释,形式为<!-- comment text -->。8
文档节点表示整个文档(DOM 树的根节点,即 document )9

获取节点类型的语法:
    nodeObject.nodeType
其中,nodeObject 为DOM节点(节点对象)。该属性返回以数字表示的节点类型,例如,元素节点返回 1,属性节点返回 2 。

例如,获取id="demo"的<div>标签的节点类型:

    
    
  1. document.getElementById("demo").nodeType;
该语句的返回值为 1 。

举例,获取元素节点和文本节点的类型值:

    
    
  1. <div id="demo1">点击这里显示节点类型</div>
  2. <script type="text/javascript">
  3. document.getElementById("demo1").onclick=function(){
  4. var divType=this.nodeType;
  5. var textType=this.firstChild.nodeType;  //  this 指当前发生事件的HTML元素,这里是<div>标签
  6. alert(
  7. "<div>标签的节点类型是:"+divType+"\n"+
  8. "<div>标签内部文本的节点类型是:"+textType
  9. );
  10. }
  11. </script>

请看演示:
点击这里显示节点类型

节点名称

节点名称就是DOM节点的名字,不同类型的节点对应不同的节点名称。
节点类型 节点名称
元素节点HTML标签的名称(大写)
属性节点属性的名称
文本节点它的值永远是#text
文档节点它的值永远是#document

获取节点名称的语法:
    nodeObject.nodeName
其中,nodeObject 为DOM节点(节点对象)。

例如,获取id="demo"的<div>标签的节点名称:

    
    
  1. document.getElementById("demo").nodeName;
该语句的返回值为 DIV 。

举例,获取元素节点名称、文本节点名称和文档节点名称:

    
    
  1. <div id="demo2">点击这里显示节点名称</div>
  2. <script type="text/javascript">
  3. document.getElementById("demo2").onclick=function(){
  4. var divName=this.nodeName;
  5. var textName=this.firstChild.nodeName;  //  this 指当前发生事件的HTML元素,这里是<div>标签
  6. var documentName=document.nodeName
  7. alert(
  8. "<div>标签的节点名称是:"+divName+"\n"+
  9. "<div>标签内部文本的节点名称是:"+textName+"\n"+
  10. "文档节点的节点名称是:"+documentName
  11. );
  12. }
  13. </script>

请看下面的演示:
点击这里显示节点名称

节点值

对于文本节点,节点值为文本内容;对于属性节点,节点值为属性的值。

节点值对于文档节点和元素节点是不可用的。

获取节点值的语法:
    nodeObject.nodeValue
其中,nodeObject 为DOM节点(节点对象)。

举例,获取文本节点的节点值:

    
    
  1. <div id="demo3">点击这里显示文本节点的值</div>
  2. <script type="text/javascript">
  3. document.getElementById("demo3").onclick=function(){
  4. alert(this.firstChild.nodeValue);  //  this 指当前发生事件的HTML元素,这里是<div>标签
  5. }
  6. </script>

请看下面的演示:
点击这里显示文本节点的值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值