나는 두 개의 클래스가있는 모든 요소를 선택합니다 a
및 b
.
<element class="a b">
따라서 두 클래스 가 모두 있는 요소 만
내가 그것을 사용할 때 $(".a, .b")
노조를 제공하지만 교차로를 원합니다.
답변
두 클래스 (논리적 AND와 같은 교차점)가있는 요소 만 일치 시키려면 사이에 공백없이 선택기를 함께 작성하십시오 .
$('.a.b')
순서는 관련이 없으므로 클래스를 바꿀 수도 있습니다.
$('.b.a')
따라서 클래스 와 div
ID가 있는 요소 를 일치시키기 위해서는 다음과 같이 작성하십시오.a
b
c
$('div#a.b.c')
실제로는 특정 정보를 얻을 필요가 없으며 ID 또는 클래스 선택기 자체만으로도 충분 $('#a')
합니다.
답변
filter()
함수를 사용하여이를 수행 할 수 있습니다 .
$(".a").filter(".b")
답변
이 경우
<element class="a">
<element class="b c">
</element>
</element>
.a
와 사이에 공백을 넣어야합니다..b.c
$('.a .b.c')
답변
당신이 겪고있는 문제는을 사용하고 Group Selector
있지만 Multiples selector
! 좀 더 구체적으로 말하면 사용하고있는 $('.a, .b')
반면을 사용해야합니다 $('.a.b')
.
자세한 내용은 아래의 선택기를 결합하는 다양한 방법에 대한 개요를 참조하십시오!
그룹 선택기 : “,”
모든 <h1>
요소와 모든 <p>
요소 및 모든 <a>
요소를 선택하십시오 .
$('h1, p, a')
배수 선택기 : “”(문자 없음)
클래스 와 함께 다음의 모든 <input>
요소를 선택하십시오 .type
text
code
red
$('input[type="text"].code.red')
후손 선택기 : “”(공백)
<i>
요소 내부의 모든 요소를 선택하십시오 <p>
.
$('p i')
어린이 선택기 : “>”
<ul>
요소의 바로 하위 요소 인 모든 요소를 선택하십시오 <li>
.
$('li > ul')
인접 형제 선택기 : “+”
<a>
요소 바로 뒤에 배치 된 모든 요소를 선택하십시오 <h2>
.
$('h2 + a')
일반 형제 선택기 : “~”
<span>
요소의 형제 인 모든 요소를 선택하십시오 <div>
.
$('div ~ span')
답변
$('.a .b , .a .c').css('border', '2px solid yellow');
//selects b and c
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="a">a
<div class="b">b</div>
<div class="c">c</div>
<div class="d">d</div>
</div>
답변
요소가있는 다른 사례를 언급하십시오.
예 : <div id="title1" class="A B C">
그냥 입력하십시오 : $("div#title1.A.B.C")
답변
바닐라 JavaScript 솔루션 :-
document.querySelectorAll('.a.b')
