jQuery遍歷
阿新 • • 發佈:2017-07-10
rst bsp sch 例子 htm 在家 下一個 children 當前
1.
下圖展示了一個家族樹。通過 jQuery 遍歷,您能夠從被選(當前的)元素開始,輕松地在家族樹中向上移動(祖先),向下移動(子孫),水平移動(同胞)。這種移動被稱為對 DOM 進行遍歷。
圖示解釋:
- <div> 元素是 <ul> 的父元素,同時是其中所有內容的祖先。
- <ul> 元素是 <li> 元素的父元素,同時是 <div> 的子元素
- 左邊的 <li> 元素是 <span> 的父元素,<ul> 的子元素,同時是 <div> 的後代。
- <span> 元素是 <li> 的子元素,同時是 <ul> 和 <div> 的後代。
- 兩個 <li> 元素是同胞(擁有相同的父元素)。
- 右邊的 <li> 元素是 <b> 的父元素,<ul> 的子元素,同時是 <div> 的後代。
- <b> 元素是右邊的 <li> 的子元素,同時是 <ul> 和 <div> 的後代。
2.祖先遍歷:祖先是父、祖父或曾祖父等等。
用於向上遍歷 DOM 樹:
- parent():返回被選元素(即當前元素)的直接父元素
- 返回每個 <span> 元素的的直接父元素
-
$(document).ready(function(){ $("span").parent(); });
- parents():返回被選元素的所有祖先元素,它一路向上直到文檔的根元素 (<html>)。
- 下面的例子返回所有 <span> 元素的所有祖先,並且它是 <ul> 元素:
-
$(document).ready(function(){ $("span").parents("ul"); });
- parentsUntil():返回介於兩個給定元素之間的所有祖先元素。
- 下面的例子返回介於 <span> 與 <div> 元素之間的所有祖先元素:
-
$(document).ready(function(){ $("span").parentsUntil("div"); });
3.後代遍歷:後代是子、孫、曾孫等等
向下遍歷 DOM 樹的 jQuery 方法:
- children():返回被選元素的所有直接子元素
- 也可以使用可選參數來過濾對子元素的搜索。下面的例子返回類名為 "1" 的所有 <p> 元素,並且它們是 <div> 的直接子元素
-
$(document).ready(function(){ $("div").children("p.1"); });
- find():返回被選元素的後代元素,一路向下直到最後一個後代
- 下面的例子返回屬於 <div> 後代的所有 <span> 元素: $("div").find("span");
- 下面的例子返回 <div> 的所有後代: $("div").find("*");
4.同胞遍歷:同胞擁有相同的父元素
有許多有用的方法讓我們在 DOM 樹進行水平遍歷: 其中以下方法都可以使用可選參數(即在括號中傳入參數)來過濾對同胞元素的搜索。
- siblings():返回被選元素的所有同胞元素
- next():返回被選元素的下一個同胞元素。
- nextAll():返回被選元素的所有跟隨的同胞元素
- nextUntil():返回介於兩個給定參數之間的所有跟隨的同胞元素
- prev():prev(), prevAll() 以及 prevUntil() 方法的工作方式與上面的方法類似,只不過方向相反而已
- prevAll()
- prevUntil()
5.遍歷過濾:
三個最基本的過濾方法是:first(), last() 和 eq(),它們允許您基於其在一組元素中的位置來選擇一個特定的元素
其他過濾方法,比如 filter() 和 not() 允許您選取匹配或不匹配某項指定標準的元素。
jQuery遍歷