1) parentsUntil返回的是一個數(shù)組,而不是單個對象
關(guān)于這個,注意'parents'是復(fù)數(shù)就行了,表示它會返回一系列的祖先元素,在數(shù)組中越外層的元素的下標(biāo)越大。
2) parentsUntil返回的數(shù)組中剛好不包括滿足選擇器參數(shù)條件的對象
這個有點奇怪,很容易產(chǎn)生誤導(dǎo)。
3) parentsUntil返回的數(shù)組中都不是Jquery封裝的對象,需要再次封裝它們才能使用Jquery提供的API
這個更奇怪,連官方文檔都沒有說明這一點,尤其是在另一個API調(diào)用 parent()返回的是Jquery對象的情況下,parentsUntil()的這種返回類型很容易產(chǎn)生誤導(dǎo)。
舉例來說,如果想獲得包含某元素(id="xxx")的最近的一個p容器,
錯誤寫法1:
var pparent = $("#xxx").parentsUntil("p"); //parentsUntil返回的是一個數(shù)組而不是單個元素
錯誤的寫法2:
var parents = $("#xxx").parentsUntil("p");
var pparent = parents[parents.length-1]; //parentsUntil返回的數(shù)組中剛好不包括滿足選擇器參數(shù)條件的對象
錯誤的寫法3:
var parents = $("#xxx").parentsUntil("p");
var pparent = parents[parents.length-1].parent(); //返回的數(shù)組中都不是Jquery封裝的對象,需要再次封裝它們才能使用Jquery提供的parent()調(diào)用。
正確寫法:
var parents = $("#xxx").parentsUntil();
var pparent = $(parents[parents.length-1]).parent();
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com