使用js或者jquery查詢父元素、子元素經常遇到。可是用起來總容易混淆,這裡統一總結了一下,以後用起來相信會方便好多
這裡jquery向上查詢父元素 用到的方法:closest() parents() parent()
向下查詢子元素 用到的方法:find() children()
js用的是 children 屬性
html**
**********包含div1的父級元素 div0**********
段落1 查詢父元素
11closest()向上查詢最近的元素(返回零個或乙個元素的 jquery 物件)
12parent()方法
13parents("選擇器")方法
段落2 查詢子元素
查詢table2的td find()方法
查詢table2的td children()方法
js的children屬性來查詢
tbody2-2
分析:closest():從元素本身開始,逐級向上級元素匹配,並返回最先匹配的元素。這個應該沒有什麼疑問。
parent():取得乙個包含著所有匹配元素的唯一父元素的元素集合。
js**:
closest()
一層一層向上找,返回最先匹配上的元素。
$(this).closest("td")
$("td").closest("tbody")
因為td是多個元素,所有最先匹配上的tbody也是多個
parent()返回唯一父元素(即:向上只找一層)。如果選擇器選擇多個物件,則返回父元素陣列。需要在陣列裡面繼續選擇,則使用parent("#id"),parent(".classname")
什麼是唯一父元素:td的父親是tr,tr的父親是tbody,tbody的父元素是table...
eg:$("tr").parent() 乙個或者多個tbody
$("table").parent("#div1");//div1。
parents()
一層一層向上找,返回所有匹配上的元素。
find()
$("#table2").find("td")和$("#table2 td")效果一樣,這一句話應該足夠了。
children()和parent()反之。
每乙個元素的所有子元素的元素集合。
$("div[name='mydiv']").children()
p table1 p table2
children屬性和jquery的children()類似,返回緊挨的下一級並列的子元素
物件都是this的話,可能更容易理解:
closest(「」) 一層一層向上,找到乙個匹配就返回
parent() 緊挨自己的上乙個元素
parents() 一層一層向上,找到所有的
find()
$("#table2").find("td") eg:$("#table2 td")
children() 緊挨自己的下乙個元素
jquery獲取父元素子元素同級元素
一 獲取父級元素 1 parent expr 獲取指定元素的所有父級元素 href fir href sec href thr href fiv document ready function 獲取指定元素的下乙個同級元素 注意是下乙個同級元素哦 這個例子的結果是,只有list item 4背景色變...
jquery 遍歷父元素 子元素 兄弟元素
尋找父元素 1.parent 方法,只返回被選元素的直接父元素,只遍歷到上一級的父元素,返回的是乙個元素。2.parents 方法,返回被選元素的所有父元素,一直向上遍歷,直到文件的根元素為止,返回父元素的集合。3.parentsuntil 方法,a.parentsuntil b 返回介於a,b之間...
jquery獲取父元素 同級元素 子元素
jquery.parent expr 找父親節點,可以傳入expr進行過濾,比如 span parent 或者 span parent class jquery.parents expr 類似於jquery.parents expr 但是是查詢所有祖先元素,不限於父元素 jquery.childre...