JavaScript取得節點類型、節點名稱和節點值
節點類型
DOM節點中,每個節點都有不同的型別。
W3C規範中常用的DOM節點類型有以下幾種:

取得節點類型的語法:
nodeObject.nodeType
其中,nodeObject 為DOM節點(節點物件)。此屬性傳回以數字表示的節點類型,例如,元素節點傳回 1,屬性節點傳回 2 。
例如,取得id="demo"的<div>標籤的節點類型:
document.getElementById("demo").nodeType;該語句的傳回值為 1 。
舉例,取得元素節點與文字節點的型別值:<div id="demo1">點選這裡顯示節點類別
<div id="demo1">点击这里显示节点类型</div>
<script type="text/javascript">
document.getElementById("demo1").onclick=function(){
var divType=this.nodeType;
var textType=this.firstChild.nodeType; // this 指当前发生事件的HTML元素,这里是<div>标签
alert(
"<div>标签的节点类型是:"+divType+"\n"+
"<div>标签内部文本的节点类型是:"+textType
);
}
</script>請看示範:
節點名稱
節點名稱就是DOM節點的名字,不同類型的節點對應不同的節點名稱。

取得節點名稱的語法:
nodeObject.nodeName
其中,nodeObject 為DOM節點(節點物件)。
例如,取得id="demo"的<div>標籤的節點名稱:
document.getElementById("demo").nodeName;該語句的傳回值為 DIV 。
舉例,取得元素節點名稱、文字節點名稱和文件節點名稱:
<div id="demo2">点击这里显示节点名称</div>
<script type="text/javascript">
document.getElementById("demo2").onclick=function(){
var divName=this.nodeName;
var textName=this.firstChild.nodeName; // this 指当前发生事件的HTML元素,这里是<div>标签
var documentName=document.nodeName
alert(
"<div>标签的节点名称是:"+divName+"\n"+
"<div>标签内部文本的节点名称是:"+textName+"\n"+
"文档节点的节点名称是:"+documentName
);
}
</script>
節點值
對於文字節點,節點值為文字內容;對於屬性節點,節點值為屬性的值。
節點值對於文件節點和元素節點是不可用的。
取得節點值的語法:
nodeObject.nodeValue
其中,nodeObject 為DOM節點(節點物件)。
舉例,取得文字節點的節點值:
<div id="demo3">点击这里显示文本节点的值</div>
<script type="text/javascript">
document.getElementById("demo3").onclick=function(){
alert(this.firstChild.nodeValue); // this 指当前发生事件的HTML元素,这里是<div>标签
}
</script>
新建檔案
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>HTML DOM树型结构图</title>
<div id="demo2">点击这里显示节点名称</div>
<script type="text/javascript">
document.getElementById("demo2").onclick=function(){
var divName=this.nodeName;
var textName=this.firstChild.nodeName; // this 指当前发生事件的HTML元素,这里是<div>标签
var documentName=document.nodeName
alert(
"<div>标签的节点名称是:"+divName+"\n"+
"<div>标签内部文本的节点名称是:"+textName+"\n"+
"文档节点的节点名称是:"+documentName
);
}
</script>
</head>
<body>
</body>
</html>
預覽
Clear
- 課程推薦
- 課件下載
課件暫不提供下載,工作人員正在整理中,後期請多關注該課程~ 















