方法:1、用“document.getElementById("id屬性值")”語句;2、用“document.getElementsByTagName("標簽名字")”語句;3、用“document.documentElement”語句。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
1. 通過document節(jié)點獲?。ㄖ苯荧@?。?/h2>
案例:
<body> <ul > <li id="one">一個</li> <li name="name1" >二個</li> <li class="classname">三個</li> <li>四個</li> </ul> </body>
1.1 通過ID
語法:document.getElementById("id屬性值")
特點:根據(jù)ID值獲取元素,返回元素對象;(id唯一)
示例:
var one=document.getElementById("one"); console.log(one);
1.2 通過標簽名
語法:document.getElementsByTagName("標簽名字")
特點:標簽名字獲取元素,返回來的是一個偽數(shù)組,里面保存了多個的DOM對象;
示例:
var li=document.getElementsByTagName("li") console.log(li);
1.3 通過name值
語法:document.getElementsByName("name屬性的值")
特點:根據(jù)name屬性的值獲取元素,返回來的是一個偽數(shù)組,里面保存了多個的DOM對象
示例:
var name1=document.getElementsByName("name1")[0]; console.log(name1);
1.4 通過class
語法:document.getElementsByClassName("類樣式的名字")
特點:據(jù)類樣式的名字來獲取元素,返回來的是一個偽數(shù)組,里面保存了多個的DOM對象
示例:
var classname=document.getElementsByClassName("classname")[0]; console.log(classname);//
1.5 通過選擇器
語法:document.querySelector("選擇器的名字")
特點:根據(jù)選擇器獲取元素,返回來的是一個元素對象;
示例:
var que1=document.querySelector("#one"); console.log(que1); //
1.6 通過所有選擇器
語法: document.querySelectorAll("選擇器的名字")
特點:據(jù)選擇器獲取元素,返回來的是一個偽數(shù)組,里面保存了多個的DOM對象;
示例:
var queall=document.querySelectorAll("li"); console.log(queall); //
1.7 特殊元素獲取
語法:doucumnet.body
特點:返回body元素對象
示例:
var body=document.body ; console.log(body);
1.8 HTML元素獲取
語法:document.documentElement
特點:html元素對象
示例:
var dc=document.documentElement ; console.log(dc);
2. 通過父級節(jié)點獲取
(一般在已經(jīng)獲取父節(jié)點,通過父節(jié)點來獲取子字節(jié))
<body> <div id="digbox"> <!-- 第一個 --> <div id="box1"> <ul class="ul"> <li>一</li> <li>二</li> <li>三</li> <li>四</li> <li>五</li> </ul> </div> <!-- 第二個 --> <div id="box2"> <a href="#">這是第二個div</a> </div> <!-- 第三個 --> <div id="box3"> <a href="#">這是第三個div</a> </div> </div> </body>
2.1 獲取第一個節(jié)點
語法:
document.getElementById("test").firstElementChild; document.getElementById("test").firstChild;
特點:獲取第一個節(jié)點
示例:
var box=document.getElementById("digbox").firstElementChild; console.log(box); var box1=document.getElementById("digbox").firstChild; console.log(box1);
2.2 獲取最后一個子節(jié)點
語法:
document.getElementById("test").lastElementChild;; document.getElementById("test").lastChild;
特點:獲取最后一個子節(jié)點
示例:
var box2= document.getElementById("digbox").lastElementChild; console.log(box2); var box3= document.getElementById("digbox").lastChild; console.log(box3);
2.3 獲取所有子節(jié)點
語法:
document.getElementById("test").children[0]; document.getElementById("test").childNodes; document.getElementById("test").childElementCount;
特點:獲取所有子節(jié)點
示例:
var box4= document.getElementById("digbox").children[0]; console.log(box4); var box5= document.getElementById("digbox").childNodes; console.log(box5); var box6= document.getElementById("digbox").childElementCount; console.log(box6);
2.4 獲取直接子節(jié)點
語法:document.getElementById("id")
特點:獲取直接子節(jié)點
示例:
var box7= document.getElementById("digbox"); console.log(box7);
2.5 獲取對應(yīng)屬性的節(jié)點
語法:document.getElementById("id").getElementsByClassName("ul");
特點: 獲取對應(yīng)屬性的節(jié)點(可以是ID,class,屬性,標簽)常用;
示例:
var box8= document.getElementById("digbox").getElementsByClassName("ul"); console.log(box8);
3. 通過兄弟節(jié)點獲取
<body> <div id="box"> <p>這是第一個標簽</p> <p id="box2">這是第二個標簽</p> <div ><a href="">這是第三個標簽</a></div> </div> </body>
3.1 獲取當前節(jié)點的前一個節(jié)點
語法:
document.getElementById("id").previousElementSibling; document.getElementById("id").previousSibling
特點: 返回指定節(jié)點的前一個節(jié)點,如果沒有 previousSibling 節(jié)點,則返回值為 null。
示例:
var box1=document.getElementById("box2").previousElementSibling; console.log(box1); var box2=document.getElementById("box2").previousSibling; console.log(box2);
3.2 獲取當前節(jié)點的后一個節(jié)點
語法:
document.getElementById("id").nextSibling document.getElementById("id").nextElementSibling;
特點: 返回指定節(jié)點之后緊跟的節(jié)點,如果沒有 nextSibling 節(jié)點,則返回值為 null。
示例:
var box3=document.getElementById("box2").nextElementSibling; console.log(box3); var box4=document.getElementById("box2").nextSibling; console.log(box4);
4. 通過子級節(jié)點獲取
4.1 通過子節(jié)點獲取父級節(jié)點
<body> <div id="box"> <p id="box2">這是第二個標簽</p> </div> </body>
語法:document.getElementById("id").parentNode
特點: 返回指定節(jié)點的父節(jié)點,如果指定節(jié)點沒有父節(jié)點,則返回 null。
示例:
var box=document.getElementById("box2").parentNode; console.log(box);
【