欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS遍歷DOM文檔樹的方法實例詳解

 更新時間:2018年04月03日 14:25:35   作者:chengqiuming  
這篇文章主要介紹了JS遍歷DOM文檔樹的方法,結(jié)合實例形式分析了javascript遍歷dom文檔樹的相關方法與使用技巧,需要的朋友可以參考下

本文實例講述了JS遍歷DOM文檔樹的方法。分享給大家供大家參考,具體如下:

一 介紹

遍歷文檔樹通過使用parentNode屬性、firstChild屬性、lastChild屬性、previousSibling屬性和nextSibling屬性來實現(xiàn)。

1、parentNode屬性

該屬性返回當前節(jié)點的父節(jié)點。

[pNode=]obj.parentNode

pNode:該參數(shù)用來存儲父節(jié)點,如果不存在父節(jié)點將返回“null”。

2、firstChild屬性

該屬性返回當前節(jié)點的第一個子節(jié)點。

[cNode=]obj.firstChild

cNode:該參數(shù)用來存儲第一個子節(jié)點,如果不存在將返回“null”。

3、lastChild屬性

該屬性返回當前節(jié)點的最后一個子節(jié)點。

[cNode=]obj.lastChild

cNode:該參數(shù)用來存儲最后一個子節(jié)點,如果不存在將返回“null”。

4、previousSibling屬性

該屬性返回當前節(jié)點的前一個兄弟節(jié)點。

[sNode=]obj.previousSibling

sNode:該參數(shù)用來存儲前一個兄弟節(jié)點,如果不存在將返回“null”。

5、nextSibling屬性

該屬性返回當前節(jié)點的后一個兄弟節(jié)點。

[sNode=]obj.nextSibling

sNode:該參數(shù)用來存儲后一個兄弟節(jié)點,如果不存在將返回“null”。

二 應用

遍歷文檔樹,在頁面中,通過相應的按鈕可以查找到文檔的各個節(jié)點的名稱、類型和節(jié)點值。

三 代碼

<head>
<title>遍歷文檔樹</title>
</head>
<body >
<h3 id="h1">三號標題</h3>
<b>加粗內(nèi)容</b>
<form name="frm" action="#" method="get">
節(jié)點名稱:<input type="text" id="na"/><br />
節(jié)點類型:<input type="text" id="ty"/><br />
節(jié)點的值:<input type="text" id="va"/><br />
<input type="button" value="父節(jié)點" onclick="txt=nodeS(txt,'parent');"/>
<input type="button" value="第一個子節(jié)點" onclick="txt=nodeS(txt,'firstChild');"/>
<input type="button" value="最后一個子節(jié)點" onclick="txt=nodeS(txt,'lastChild');"/><br>
<input name="button" type="button" onclick="txt=nodeS(txt,'previousSibling');" value="前一個兄弟節(jié)點"/>
<input type="button" value="最后一個兄弟節(jié)點" onclick="txt=nodeS(txt,'nextSibling');"/>
<input type="button" value="返回根節(jié)點" onclick="txt=document.documentElement;txtUpdate(txt);"/>
</form>
<script language="javascript">
<!--
function txtUpdate(txt)
{
 window.document.frm.na.value=txt.nodeName;
 window.document.frm.ty.value=txt.nodeType;
 window.document.frm.va.value=txt.nodeValue;
}
function nodeS(txt,nodeName)
{
switch(nodeName)
{
case"previousSibling":
if(txt.previousSibling)
{
 txt=txt.previousSibling;
}
else
 alert("無兄弟節(jié)點");
break;
case"nextSibling":
if(txt.nextSibling)
{
 txt=txt.nextSibling;
}
else
 alert("無兄弟節(jié)點");
break;
case"parent":
if(txt.parentNode)
{
 txt=txt.parentNode;
}
else
 alert("無父節(jié)點");
break;
case"firstChild":
if(txt.hasChildNodes())
{
 txt=txt.firstChild;
}
else
 alert("無子節(jié)點");
break;
case"lastChild":
if(txt.hasChildNodes())
{
 txt=txt.lastChild;
}
else
 alert("無子節(jié)點")
break;
}
 txtUpdate(txt);
return txt;
}
var txt=document.documentElement;
 txtUpdate(txt);
-->
</script>
</body>

四 運行結(jié)果

更多關于JavaScript相關內(nèi)容感興趣的讀者可查看本站專題:《JavaScript操作DOM技巧總結(jié)》、《JavaScript錯誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學運算用法總結(jié)

希望本文所述對大家JavaScript程序設計有所幫助。

相關文章

最新評論