jQuery之元素的遍歷和元素的過濾
阿新 • • 發佈:2018-12-25
jQuery 遍歷函式包括了用於篩選、查詢和串聯元素的方法。
向下遍歷方法
- .children() 獲得匹配元素集合中每個元素的所有子元素;
- .find() 獲得當前匹配元素集合中每個元素的後代,由選擇器進行篩選;
style.css 設定樣式
#div1{
width:500px;
height:200px;
border:3px solid fuchsia;
}
#div2{
width:400px;
height: 150px;
margin-top:10px;
margin-left :10px;
border:3px solid fuchsia;
}
p{
margin-left:10px;
margin-top:10px;
width:150px;
height:80px;
border:3px solid fuchsia;
}
TraversingDown.html
<div id="div1">div1
<div id="div2">div2
<p>
<a>
hello
</a >
</p>
</div>
</div>
TraversingDown.js
/*
向下遍歷的方法
* children
* find*/
$(document).ready(function () {
$("#div1").children("p").css({ //#div2是可選引數,只能是下一級,不能越級
border:"3px solid red"
});
// $("#div1").find("a").css({ //p是必選引數,可以是任一層級
// border:"3px solid red"
// });
});
向上遍歷方法
- .parent() 獲得當前匹配元素集合中每個元素的父元素,由選擇器篩選(可選)。
- .parents() 獲得當前匹配元素集合中每個元素的祖先元素,由選擇器篩選(可選)。
- .parentsUntil() 獲得當前匹配元素集合中每個元素的祖先元素,直到遇到匹配選擇器的元素為止。
TraversingUp.html
<div id="div1">div1
<div id="div2">div2
<p>
<a>
hello
</a>
</p>
</div>
</div>
TraversingUp.js
/*
* 向上遍歷的方法
* parent()
* parents()
* parentsUntil()
* */
$(document).ready(function () {
// $("a").parent().css({border:"3px solid red"}) //只能指向向上一級的父級元素;
// $("a").parents().css({border:"3px solid red"}) //向上遍歷所有的父級元素,也可設定引數指定;
$("a").parentsUntil("#div1").css({border:"3px solid red"}) //指定區間;
});
同級遍歷
- siblings() 獲得匹配元素集合中所有元素的同輩元素,由選擇器篩選(可選)。
- next() 獲得匹配元素集合中每個元素緊鄰的同輩元素。
nextAll() 獲得匹配元素集合中每個元素之後的所有同輩元素,由選擇器進行篩選(可選)。
nextUntil() 獲得每個元素之後所有的同輩元素,直到遇到匹配選擇器的元素為止。
- prev() 獲得匹配元素集合中每個元素緊鄰的前一個同輩元素,由選擇器篩選(可選)。
- prevAll()獲得匹配元素集合中每個元素之前的所有同輩元素,由選擇器進行篩選(可選)。
- prevUntil()獲得每個元素之前所有的同輩元素,直到遇到匹配選擇器的元素為止。
過濾
- first()將匹配元素集合縮減為集合中的第一個元素。
- not()從匹配元素集合中刪除元素。
- last()將匹配元素集合縮減為集合中的最後一個元素。
- filter()將匹配元素集合縮減為匹配選擇器或匹配函式返回值的新元素。
- eq() 將匹配元素集合縮減為位於指定索引的新元素。
函式 | 描述 |
---|---|
.add() | 將元素新增到匹配元素的集合中。 |
.andSelf() | 把堆疊中之前的元素集新增到當前集合中。 |
.children() | 獲得匹配元素集合中每個元素的所有子元素。 |
.closest() | 從元素本身開始,逐級向上級元素匹配,並返回最先匹配的祖先元素。 |
.contents() | 獲得匹配元素集合中每個元素的子元素,包括文字和註釋節點。 |
.each() | 對 jQuery 物件進行迭代,為每個匹配元素執行函式。 |
.end() | 結束當前鏈中最近的一次篩選操作,並將匹配元素集合返回到前一次的狀態。 |
.eq() | 將匹配元素集合縮減為位於指定索引的新元素。 |
.filter() | 將匹配元素集合縮減為匹配選擇器或匹配函式返回值的新元素。 |
.find() | 獲得當前匹配元素集合中每個元素的後代,由選擇器進行篩選。 |
.first() | 將匹配元素集合縮減為集合中的第一個元素。 |
.has() | 將匹配元素集合縮減為包含特定元素的後代的集合。 |
.is() | 根據選擇器檢查當前匹配元素集合,如果存在至少一個匹配元素,則返回 true。 |
.last() | 將匹配元素集合縮減為集合中的最後一個元素。 |
.map() | 把當前匹配集合中的每個元素傳遞給函式,產生包含返回值的新 jQuery 物件。 |
.next() | 獲得匹配元素集合中每個元素緊鄰的同輩元素。 |
.nextAll() | 獲得匹配元素集合中每個元素之後的所有同輩元素,由選擇器進行篩選(可選)。 |
.nextUntil() | 獲得每個元素之後所有的同輩元素,直到遇到匹配選擇器的元素為止。 |
.not() | 從匹配元素集合中刪除元素。 |
.offsetParent() | 獲得用於定位的第一個父元素。 |
.parent() | 獲得當前匹配元素集合中每個元素的父元素,由選擇器篩選(可選)。 |
.parents() | 獲得當前匹配元素集合中每個元素的祖先元素,由選擇器篩選(可選)。 |
.parentsUntil() | 獲得當前匹配元素集合中每個元素的祖先元素,直到遇到匹配選擇器的元素為止。 |
.prev() | 獲得匹配元素集合中每個元素緊鄰的前一個同輩元素,由選擇器篩選(可選)。 |
.prevAll() | 獲得匹配元素集合中每個元素之前的所有同輩元素,由選擇器進行篩選(可選)。 |
.prevUntil() | 獲得每個元素之前所有的同輩元素,直到遇到匹配選擇器的元素為止。 |
.siblings() | 獲得匹配元素集合中所有元素的同輩元素,由選擇器篩選(可選)。 |
.slice() | 將匹配元素集合縮減為指定範圍的子集。 |