首页 >web前端 >js教程 >有关Jquery中parentsUntil调用易犯错的三个地方总结

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

巴扎黑
巴扎黑原创
2017-06-24 09:53:361083浏览

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