如何在 jQuery 中选择具有多个类的元素?

问:

我想选择具有 a 和 b 两个类的所有元素。



因此,只有具有这两个类的元素。

当我使用 $(“.a, .b”) 时,它给了我联合,但我想要交集。

答1:

一个优秀的自由职业者,应该有对需求敏感和精准需求捕获的能力,而huntsbot.com提供了这个机会

如果您只想匹配两个类的元素(交集,如逻辑 AND),只需将选择器写在一起,中间不带空格:

$('.a.b')

顺序不相关,因此您也可以交换类:

$('.b.a')

因此,要将 ID 为 a 的 div 元素与类 b 和 c 匹配,您可以编写:

$('div#a.b.c')

(在实践中,您很可能不需要获得那个特定的,并且一个 ID 或类选择器本身通常就足够了:$(‘#a’)。)

@Flater:这只是为了举例。但是,如果类 b 和 c 是动态添加的,并且您只想选择具有这些类的元素,则它可能会很有用。

@Shimmy:是的。两个选择器之间的空格表示您正在搜索后代;即 .a .b 搜索具有类 b 的元素,这些元素是具有类 a 的元素的后代。所以像 div a 这样的东西只会返回 inside div 元素的 a 元素。

答2:

huntsbot.com洞察每一个产品背后的需求与收益,从而捕获灵感

您可以使用 filter() 函数执行此操作:

$(".a").filter(".b")

这个答案和接受的答案有什么区别?

@Rice:这个会慢一点,因为它将首先构建一个具有“a”类的对象列表,然后删除除具有“b”类的对象之外的所有对象,而我的是一步完成的。但除此之外,没有区别。

答3:

HuntsBot周刊–不定时分享成功产品案例,学习他们如何成功建立自己的副业–huntsbot.com

对于案件


  
  


您需要在 .a 和 .b.c 之间放置一个空格

$('.a .b.c')

答4:

保持自己快人一步,享受全网独家提供的一站式外包任务、远程工作、创意产品订阅服务–huntsbot.com

您遇到的问题是您使用的是 Group Selector,而您应该使用的是 Multiples selector!更具体地说,您使用的是 $(‘.a, .b’),而您应该使用的是 $(‘.a.b’)。

有关更多信息,请参阅下面组合选择器的不同方法的概述!

组选择器:“,”

选择所有

元素和所有

元素和所有 元素:

$('h1, p, a')

倍数选择器:“”(无字符)

选择 type text 的所有 元素,类 code 和 red :

$('input[type="text"].code.red')

后代选择器:“”(空格)

选择

元素内的所有 元素:

$('p i')

子选择器:“>”

选择作为

  • 元素的直接子级的所有
    • 元素:
  • $('li > ul')
    
    

    相邻兄弟选择器:“+”

    选择紧跟在

    元素之后的所有 元素:

    $('h2 + a')
    
    

    通用兄弟选择器:“~”

    选择作为

    元素的兄弟的所有 元素:

    $('div ~ span')
    
    

    答5:

    保持自己快人一步,享受全网独家提供的一站式外包任务、远程工作、创意产品订阅服务–huntsbot.com

    $(‘.a .b , .a .c’).css(‘border’, ‘2px 纯黄色’); //选择 b 和 c a b c d

    答6:

    huntsbot.com汇聚了国内外优秀的初创产品创意,可按收入、分类等筛选,希望这些产品与实践经验能给您带来灵感。

    只需提及另一个带有元素的案例:

    例如

    只需输入:$(“div#title1.A.B.C”)

    答7:

    保持自己快人一步,享受全网独家提供的一站式外包任务、远程工作、创意产品订阅服务–huntsbot.com

    香草 JavaScript 解决方案:-

    document.querySelectorAll(‘.a.b’)

    答8:

    huntsbot.com提供全网独家一站式外包任务、远程工作、创意产品分享与订阅服务!

    为了获得更好的性能,您可以使用

    $('div.a.b')
    
    

    这将只查看 div 元素,而不是逐步查看页面上的所有 html 元素。

    答9:

    huntsbot.com洞察每一个产品背后的需求与收益,从而捕获灵感

    您的代码 $(“.a, .b”) 将适用于以下多个元素(同时)

    
    
    
    

    如果您想选择具有 a 和 b 类的元素,例如 ,而不是使用不带逗号的 js

    $('.a.b')
    
    

    答10:

    huntsbot.com提供全网独家一站式外包任务、远程工作、创意产品分享与订阅服务!

    组选择器

    body {font-size: 12px; }
    body {font-family: arial, helvetica, sans-serif;}
    th {font-size: 12px; font-family: arial, helvetica, sans-serif;}
    td {font-size: 12px; font-family: arial, helvetica, sans-serif;}
    
    

    变成这样:

    body, th, td {font-size: 12px; font-family: arial, helvetica, sans-serif;}
    
    

    因此,在您的情况下,您尝试了组选择器,而它是一个交集

    $(".a, .b") 
    
    

    而是使用这个

    $(".a.b") 
    
    

    答11:

    huntsbot.com洞察每一个产品背后的需求与收益,从而捕获灵感

    为此,您不需要 jQuery

    在 Vanilla 中,您可以:

    document.querySelectorAll('.a.b')
    
    

    原文链接:https://www.huntsbot.com/qa/kan6/how-can-i-select-an-element-with-multiple-classes-in-jquery?lang=zh_CN&from=csdn

    huntsbot.com – 高效赚钱,自由工作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值