如何在jQuery中select多个类的元素?
我想select所有具有两个类a和b的元素。
<element class="ab">
所以,只有两个类的元素。
当我使用$(".a, .b")它给了我工会,但我想要的交集。
如果你想要一个十字路口,只需将select符写在一起, 而不需要在它们之间的空格 。
$('.a.b')
所以对于ID为a和b的元素,你可以这样写:
$('#abc')
你可以使用filter()函数来做到这一点:
$(".a").filter(".b")
对于这种情况
<element class="a"> <element class="bc"> </element> </element>
您需要在.a和.bc之间放置一个空格
$('.a .b.c')
你遇到的问题是你正在使用Group Selector ,而你应该使用一个Multiples selector ! 更具体地说,你使用$('.a, .b')而你应该使用$('.a.b') 。
有关更多信息,请参阅下面结合select器的不同方式的概述!
组select器:“,”
select所有<h1>元素和所有<p>元素和所有<a>元素:
$('h1, p, a')
倍数select器:“”(无字符)
selecttext type所有<input>元素,使用类code和red :
$('input[type="text"].code.red')
后代select器:“”(空格)
select<p>元素中的所有<i> <p>元素:
$('p i')
子select器:“>”
select<li>元素的直接子元素的所有<ul>元素:
$('li > ul')
邻居兄弟select器:“+”
select紧接在<h2>元素之后的所有<a>元素:
$('h2 + a')
一般兄弟姐妹select:“〜”
select所有属于<div>元素的兄弟元素的<div>元素:
$('div ~ span')
<div class="a">a <div class="b">b</div> <div class="c">c</div> <div class="d">d</div> </div> $('.a .b , .a .c').css('border', '2px solid yellow'); //selects b and c
香草JavaScript解决scheme: –
document.querySelectorAll('.a.b')
只要提一下元素的另一个例子:
例如<div id="title1" class="ABC">
只需input: $("div#title1.ABC")
为了更好的performance,你可以使用
$('div.a.b')
这只会通过div元素而不是遍历页面上的所有html元素。
组select器
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;}
所以在你的情况下,你已经尝试了组select器,而它的交集
$(".a, .b")
而是使用这个
$(".ab")