Rumah >hujung hadapan web >tutorial js >有关Jquery中parentsUntil调用易犯错的三个地方总结

有关Jquery中parentsUntil调用易犯错的三个地方总结

巴扎黑
巴扎黑asal
2017-06-24 09:53:361067semak imbas

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();

 

 

 

Atas ialah kandungan terperinci 有关Jquery中parentsUntil调用易犯错的三个地方总结. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn