首頁 >web前端 >js教程 >有關Jquery中parentsUntil呼叫易犯錯的三個地方總結

有關Jquery中parentsUntil呼叫易犯錯的三個地方總結

巴扎黑
巴扎黑原創
2017-06-24 09:53:361067瀏覽

Jquery的parentsUntil()方法用來找出Jquery物件的祖先,使用的時候有三個問題一定要注意:

1) parentsUntil回傳的是一個陣列,而不是單一物件

關於這個,注意'parents'是複數就行了,表示它會傳回一系列的祖先元素,在陣列中越外層的元素的下標越大。

 

2) parentsUntil回傳的陣列中剛好不包括滿足選擇器參數條件的物件

這個有點奇怪,很容易產生誤導。

 

3) parentsUntil傳回的陣列中都不是Jquery封裝的對象,需要再次封裝它們才能使用Jquery提供的API

#這個比較奇怪,連官方文件都沒有說明這一點,尤其是在另一個API呼叫parent()回傳的是Jquery物件的情況下,parentsUntil()的這個回傳類型很容易產生誤導。

 

舉例來說,如果想要得到包含某元素(id="xxx")的最近的一個p容器,

錯誤寫法1:

var pparent = $("#xxx").parentsUntil("p"); //parentsUntil回傳的是一個陣列而不是單一元素

錯誤的寫法2:

#var parents = $("#xxx").parentsUntil("p");

var pparent = parents[parents.length-1]; //parentsUntil傳回的陣列中剛好不包含符合選擇器參數條件的物件

 

##錯誤的寫法3:

var parents = $("#xxx").parentsUntil("p");

var pparent = parents[parents.length- 1].parent(); //傳回的陣列中都不是Jquery封裝的對象,需要再次封裝它們才能使用Jquery提供的parent()呼叫。

 

正確寫法:

#var parents = $("#xxx").parentsUntil();

var pparent = $(parents[parents.length-1]).parent();

 

 

 

以上是有關Jquery中parentsUntil呼叫易犯錯的三個地方總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn