Heim > Web-Frontend > js-Tutorial > Hauptteil

js 遍历DOM实例详解

WBOY
Freigeben: 2016-06-01 09:54:58
Original
1985 Leute haben es durchsucht

在JS中,DOM的遍历一般用到一下三种方法:
document.getElementById     通过ID获取元素节点。
document.getElementsByTagName   通过标签名称获取元素节点, 返回的是一个数组。
document.getElementsByName     通过标签的name属性获取元素节点,返回的也是是一个数组。
例外还有 document.getElementsByClass, 这个在IE上好像不兼容。 

下面是我写的DOM遍历的一个例子:
 

<code class="language-javascript">



<div id="main">
<a href="http://baodu.com">baidu.com</a>
    <a href="http://2345.com">2345.com</a>
    <a href="http://sina.com">sina.com</a>
    <a href="http://google.com">google.com</a>
    <h1>go home</h1>
    <span id="span1">this is span</span>
    123456
</div>
<script type="text/javascript">
var pn=document.getElementById("main");//获取ID为main的元素节点
var ca=pn.getElementsByTagName("a");//获取ID为main元素的所有a子节点。
//遍历所有a子节点
for(var i=0; i<ca.length; i++){
    alert("text:"+ca[i].innerHTML+";  href:"+ca[i].href);
}

pn.lastChild; //获取mian元素节点的最后一个子节点,改节点为文本节点, 可以直接用nodeType获取节点类型,用nodeValue获取文本值。
pn.lastChild.nodeType;  //运行结果为:3; 3表示文本节点。
pn.lastChild.nodeValue;//运行结果为:123456

pn.firstChild;//获取mian元素节点的第一个子节点改节点为元素节点。
pn.firstChild.innerHTML; //获取该节点的文本。
pn.firstChild.href;//获取该节点的href属性。

var parentSpan=document.getElementById("span1").parentNode;//获取id为span1的父节点
alert(parentSpan.id); //获取id为span1的父节点的ID;
</script>

</code>
Nach dem Login kopieren

 

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!