• 技术文章 >web前端 >js教程

    jquery可以获取父元素吗?

    青灯夜游青灯夜游2020-11-20 15:07:10原创1292

    jquery可以获取父元素。jquery获取父元素的方法比较多,比如parent(),parents(),closest()等都能获取父元素或节点;parent()返回被选元素的直接父元素、closest()返回被选元素的第一个祖先元素。

    相关推荐:《jq视频

    jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解:

    先举个例子,

    <ul class="parent1">
    <li><a href="#" id="item1">jquery获取父节点</a></li>
    <li><a href="#">jquery获取父元素</a></li>
    </ul>

    我们的目的是通过 id 为 item1 的便签a取到 class 为 parent1 的ul元素,有以下几种方法:

    1、parent([expr])

    取得一个包含着所有匹配元素的唯一父元素的元素集合。

    你可以使用可选的表达式来筛选。

    代码如下

    $('#item1').parent().parent('.parent1');

    2、:parent

    匹配含有子元素或者文本的元素

    代码如下

    $('li:parent');

    3、parents([expr])

    取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。

    代码如下

    $('#items').parents('.parent1');

    4、closest([expr])

    closest会首先检查当前元素是否匹配,如果匹配则直接返回元素本身。如果不匹配则向上查找父元素,一层一层往上,直到找到匹配选择器的元素。如果什么都没找到则返回一个空的jQuery对象。

    closest和parents的主要区别是:1,前者从当前元素开始匹配寻找,后者从父元素开始匹配寻找;2,前者逐级向上查找,直到发现匹配的元素后 就停止了,后者一直向上查找直到根元素,然后把这些元素放进一个临时集合中,再用给定的选择器表达式去过滤;3,前者返回0或1个元素,后者可能包含0 个,1个,或者多个元素。

    closest对于处理事件委派非常有用。

    $('#items1').closest('.parent1');

    更多编程相关知识,请访问:编程学习课程!!

    以上就是jquery可以获取父元素吗?的详细内容,更多请关注php中文网其它相关文章!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!
    专题推荐:jquery 获取父元素
    上一篇:jquery怎么判断数组是否为空? 下一篇:jquery中$符号的作用是什么?
    第14期线上培训班

    相关文章推荐

    • jquery如何增加标签属性• jquery如何获取元素标签• 用jquery如何获取类名• 浅谈jquery中将类数组对象转换为数组对象的方法• jquery怎么样判断值是否是url地址

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网