當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JavaScript获取节点类型、节点名称和节点值
生活随笔
收集整理的這篇文章主要介紹了
JavaScript获取节点类型、节点名称和节点值
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
DOM節(jié)點信息包括節(jié)點類型(nodeType)、節(jié)點名稱(nodeName)和節(jié)點值(nodeValue)。
W3C規(guī)范中常用的 DOM節(jié)點類型有以下幾種:
獲取節(jié)點類型的語法:
? ? nodeObject.nodeType
其中,nodeObject 為DOM節(jié)點(節(jié)點對象)。該屬性返回以數(shù)字表示的節(jié)點類型,例如,元素節(jié)點返回 1,屬性節(jié)點返回 2 。
例如,獲取id="demo"的<div>標簽的節(jié)點類型:document.getElementById("demo").nodeType; 該語句的返回值為 1 。
舉例,獲取元素節(jié)點和文本節(jié)點的類型值:<div id="demo1">點擊這里顯示節(jié)點類型</div> <script type="text/javascript"> document.getElementById("demo1").onclick=function(){ var divType=this.nodeType; var textType=this.firstChild.nodeType; ?//? this 指當前發(fā)生事件的HTML元素,這里是<div>標簽 alert( "<div>標簽的節(jié)點類型是:"+divType+"\n"+ "<div>標簽內(nèi)部文本的節(jié)點類型是:"+textType ); } </script>
請看演示: 點擊這里顯示節(jié)點類型
獲取節(jié)點名稱的語法:
? ? nodeObject.nodeName
其中,nodeObject 為DOM節(jié)點(節(jié)點對象)。
例如,獲取id="demo"的<div>標簽的節(jié)點名稱:document.getElementById("demo").nodeName; 該語句的返回值為 DIV 。
舉例,獲取元素節(jié)點名稱、文本節(jié)點名稱和文檔節(jié)點名稱:<div id="demo2">點擊這里顯示節(jié)點名稱</div> <script type="text/javascript"> document.getElementById("demo2").onclick=function(){ var divName=this.nodeName; var textName=this.firstChild.nodeName; ?//? this 指當前發(fā)生事件的HTML元素,這里是<div>標簽 var documentName=document.nodeName alert( "<div>標簽的節(jié)點名稱是:"+divName+"\n"+ "<div>標簽內(nèi)部文本的節(jié)點名稱是:"+textName+"\n"+ "文檔節(jié)點的節(jié)點名稱是:"+documentName ); } </script>
請看下面的演示:
點擊這里顯示節(jié)點名稱
節(jié)點值對于文檔節(jié)點和元素節(jié)點是不可用的。
獲取節(jié)點值的語法:
? ? nodeObject.nodeValue
其中,nodeObject 為DOM節(jié)點(節(jié)點對象)。
舉例,獲取文本節(jié)點的節(jié)點值:<div id="demo3">點擊這里顯示文本節(jié)點的值</div> <script type="text/javascript"> document.getElementById("demo3").onclick=function(){ alert(this.firstChild.nodeValue); ?//? this 指當前發(fā)生事件的HTML元素,這里是<div>標簽 } </script>
請看下面的演示: 點擊這里顯示文本節(jié)點的值
節(jié)點類型
DOM節(jié)點中,每個節(jié)點都擁有不同的類型。W3C規(guī)范中常用的 DOM節(jié)點類型有以下幾種:
| 元素節(jié)點 | 每一個HTML標簽都是一個元素節(jié)點,如 <div> 、 <p>、<ul>等 | 1 |
| 屬性節(jié)點 | 元素節(jié)點(HTML標簽)的屬性,如 id 、class 、name 等。 | 2 |
| 文本節(jié)點 | 元素節(jié)點或屬性節(jié)點中的文本內(nèi)容。 | 3 |
| 注釋節(jié)點 | 表示文檔注釋,形式為<!-- comment text -->。 | 8 |
| 文檔節(jié)點 | 表示整個文檔(DOM 樹的根節(jié)點,即 document?) | 9 |
獲取節(jié)點類型的語法:
? ? nodeObject.nodeType
其中,nodeObject 為DOM節(jié)點(節(jié)點對象)。該屬性返回以數(shù)字表示的節(jié)點類型,例如,元素節(jié)點返回 1,屬性節(jié)點返回 2 。
例如,獲取id="demo"的<div>標簽的節(jié)點類型:
舉例,獲取元素節(jié)點和文本節(jié)點的類型值:
請看演示: 點擊這里顯示節(jié)點類型
節(jié)點名稱
節(jié)點名稱就是DOM節(jié)點的名字,不同類型的節(jié)點對應不同的節(jié)點名稱。| 元素節(jié)點 | HTML標簽的名稱(大寫) |
| 屬性節(jié)點 | 屬性的名稱 |
| 文本節(jié)點 | 它的值永遠是#text |
| 文檔節(jié)點 | 它的值永遠是#document |
獲取節(jié)點名稱的語法:
? ? nodeObject.nodeName
其中,nodeObject 為DOM節(jié)點(節(jié)點對象)。
例如,獲取id="demo"的<div>標簽的節(jié)點名稱:
舉例,獲取元素節(jié)點名稱、文本節(jié)點名稱和文檔節(jié)點名稱:
請看下面的演示:
點擊這里顯示節(jié)點名稱
節(jié)點值
對于文本節(jié)點,節(jié)點值為文本內(nèi)容;對于屬性節(jié)點,節(jié)點值為屬性的值。節(jié)點值對于文檔節(jié)點和元素節(jié)點是不可用的。
獲取節(jié)點值的語法:
? ? nodeObject.nodeValue
其中,nodeObject 為DOM節(jié)點(節(jié)點對象)。
舉例,獲取文本節(jié)點的節(jié)點值:
請看下面的演示: 點擊這里顯示文本節(jié)點的值
總結
以上是生活随笔為你收集整理的JavaScript获取节点类型、节点名称和节点值的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jquery after append
- 下一篇: 元素节点、属性节点、文本节点 的节点属性