jquery如何查找后代元素?jquery获取后代元素方法

在上一篇我们讲到jquery获取父元素?相信你已经学会了,那么下面我们来讲一下jquery如何查找后代元素?jquery获取后代元素方法

一: 查找后代元素三种方法

(1)children();

(2)contents();

(3)find();

所谓的后代元素,就是某个元素的“子元素”、“孙元素”……。孙元素,在前端虽然没这个说法,但是却比较形象,所以这一节使用这一个说法。

二:jquery获取后代元素方法

1.children()方法

在jQuery中,我们可以使用children()方法来查找当前元素的“所有子元素”或“部分子元素”。注意,children()方法只能查找子元素,不能查找其他后代元素。

语法:children(expression)

说明:参数expression表示jQuery选择器表达式,用来过滤子元素。当参数省略时,则将选择所有的子元素。如果参数不省略,则表示选择符合条件的子元素。

举例:

nbsp;html>                    $(function () {            $(".wrapper").hover(function () {                $(this).children(".test").css("color", "red");            }, function () {                $(this).children(".test").css("color", "black");            })        })        
        
子元素
        
                
  • 孙元素
  •             
  • 孙元素
  •             
  • 孙元素
  •         
        
子元素
    
    
    
        
子元素
        
                
  • 孙元素
  •             
  • 孙元素
  •             
  • 孙元素
  •         
        
子元素
    

登录后复制

效果如下:

1.png

当我们鼠标移到第1个class为wrapper的div元素上时,在浏览器预览效果如下:

2.png

分析:$(this).children(“.test”)表示选择当前元素下class为test的“子元素”。在这里我们会发现,虽然也有class为test的“孙元素”,但是使用children()方法却不会将“孙元素”选中。

2.contents()方法

与children()方法相似,contents()方法也是用来查找子内容的,但它不仅获取子元素,还可以获取文本节点、注释节点等。因此读者可以把它视为DOM中childNodes属性的jQuery实现。contents()方法很少用,作为初学者我们可以直接忽略这个方法。

我记得在之前不少教程中,对于常见但不常用的一些知识,都会多少提及一下。很多热心的建议说,站长啊,既然这个知识用不到,浪费篇幅,干嘛提及呢?直接删除都行了。其实嘛,道理很简单:学习知识,知道“哪些不用深入学习”,跟“知道哪些需要深入学习”是同等重要的。一来为了方便读者理清思路,二来以后碰到这个知识了,也有那么点印象不至于手忙脚乱。

3.find()方法

find()方法和children()方法相似,都是用来查找所选元素的后代元素,但是find()方法能够查找所有后代元素,而children()方法仅能够查找子元素。

find()方法和children()方法使用频率差不多,同等重要。大家要认真掌握,并且认真区分。

语法:find(expression)

说明:参数expression表示jQuery选择器表达式,用来过滤子元素。当参数省略时,则将选择所有的子元素。如果参数不省略,则表示选择符合条件的子元素。

举例:

nbsp;html>                    $(function () {            $(".wrapper").hover(function () {                $(this).find(".test").css("color", "red");            }, function () {                $(this).find(".test").css("color", "black");            })        })        
        
子元素
        
                
  • 孙元素
  •             
  • 孙元素
  •             
  • 孙元素
  •         
        
子元素
    
    
    
        
子元素
        
                
  • 孙元素
  •             
  • 孙元素
  •             
  • 孙元素
  •         
        
子元素
    

登录后复制

默认情况下,在浏览器预览效果如下:

10-3-3.png

当我们鼠标移到第1个class为wrapper的div元素上时,在浏览器预览效果如下:

10-3-4.png

分析:$(this).find(“.test”)表示选择当前元素下的class为test的所有“后代元素”,既包括子元素,也包括孙元素等所有后代元素。大家将find()方法这个例子跟children()方法那个例子对比一下,就能很直观发现两者之间的不同。

与children()方法相似,contents()方法也是用来查找子内容的,但它不仅获取子元素,还可以获取文本节点、注释节点等。因此读者可以把它视为DOM中childNodes属性的jQuery实现。contents()方法很少用,作为初学者我们可以直接忽略这个方法。如果想要深入学习的话,可以参考:jQuery教程。

以上就是jquery如何查找后代元素?jquery获取后代元素方法的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2737540.html

(0)
上一篇 2025年3月8日 01:36:58
下一篇 2025年3月8日 01:37:06

AD推荐 黄金广告位招租... 更多推荐

发表回复

登录后才能评论