1. 程式人生 > >jQuery之元素的遍歷和元素的過濾

jQuery之元素的遍歷和元素的過濾

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() 將匹配元素集合縮減為指定範圍的子集。