欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

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

程序员文章站 2022-05-28 20:50:48
...
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调用易犯错的三个地方总结的详细内容,更多请关注其它相关文章!