獲取節(jié)點(diǎn)
第一種
// 返回ID為'test'的節(jié)點(diǎn):
var test = document.getElementById('test');
// 先定位ID為'test-table'的節(jié)點(diǎn),再返回其內(nèi)部所有tr節(jié)點(diǎn):
var trs = document.getElementById('test-table').getElementsByTagName('tr');
// 先定位ID為'test-div'的節(jié)點(diǎn),再返回其內(nèi)部所有class包含red的節(jié)點(diǎn):
var reds = document.getElementById('test-div').getElementsByClassName('red');
// 獲取節(jié)點(diǎn)test下的所有直屬子節(jié)點(diǎn):
var cs = test.children;
// 獲取節(jié)點(diǎn)test下第一個(gè)、最后一個(gè)子節(jié)點(diǎn):
var first = test.firstElementChild;
var last = test.lastElementChild;
第二種 (低版本的IE<8不支持)
// 通過querySelector獲取ID為q1的節(jié)點(diǎn):
var q1 = document.querySelector('#q1');
// 通過querySelectorAll獲取q1節(jié)點(diǎn)內(nèi)的符合條件的所有節(jié)點(diǎn):
var ps = q1.querySelectorAll('div.highlighted > p');

Paste_Image.png
練習(xí)
<!-- HTML結(jié)構(gòu) -->
<div id="test-div">
<div class="c-red">
<p id="test-p">JavaScript</p>
<p>Java</p>
</div>
<div class="c-red c-green">
<p>Python</p>
<p>Ruby</p>
<p>Swift</p>
</div>
<div class="c-green">
<p>Scheme</p>
<p>Haskell</p>
</div>
</div>
// 選擇<p>JavaScript</p>:
var js = document.getElementById('test-p');
// 選擇<p>Python</p>,<p>Ruby</p>,<p>Swift</p>:
var arr = document.getElementsByClassName('c-red c-green')[0].children;
// 選擇<p>Haskell</p>:
var haskell = (document.getElementsByClassName('c-green')[1].children)[1];