jQuery 遍歷 - children() 方法
實例
找到類名為 "selected" 的所有 div 的子元素,并將其設置為藍色:
$("div").children(".selected")
.css("color", "blue");
定義和用法
add() 方法返回匹配元素集合中每個元素的子元素,添加可選參數可通過選擇器進行過濾。
語法
.children(selector)
參數 | 描述 |
---|---|
selector | 字符串值,包含匹配元素的選擇器表達式。 |
詳細說明
如果給定表示 DOM 元素集合的 jQuery 對象,.children() 方法允許我們檢索 DOM 樹中的這些元素,并用匹配元素構造新的 jQuery 對象。.find() 和 .children() 方法類似,不過后者只沿著 DOM 樹向下遍歷單一層級。
請注意,與大多數 jQuery 方法一樣,.children() 不返回文本節(jié)點;如果需要獲得包含文本和注釋節(jié)點在內的所有子節(jié)點,請使用 .contents()。
該方法接受一個選擇器表達式作為可選參數,與我們傳遞到 $() 的參數的類型是相同的。如果應用該選擇器,將測試元素是否匹配該表達式,以此篩選這些元素。
請思考這個帶有基礎的嵌套列表的頁面:
<ul class="level-1">
<li class="item-i">I</li>
<li class="item-ii">II
<ul class="level-2">
<li class="item-a">A</li>
<li class="item-b">B
<ul class="level-3">
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
</ul>
</li>
<li class="item-c">C</li>
</ul>
</li>
<li class="item-iii">III</li>
</ul>
如果我們從 level-2 列表開始,我們可以找到它的子元素:
$('ul.level-2').children().css('background-color', 'red');
這行代碼的結果是,項目 A, B, C 得到紅色背景。由于我們沒有應用選擇器表達式,返回的 jQuery 對象包含了所有子元素。如果應用一個選擇器的話,那么只會包括匹配的項目。