2284 Stimmen

Wie kann ich ein Element mit mehreren Klassen in jQuery auswählen?

Ich möchte alle Elemente auswählen, die die folgenden beiden Klassen haben a y b .

<element class="a b">

Es werden also nur die Elemente, die eine beide Klassen.

Wenn ich die $(".a, .b") er gibt mir die Vereinigung, aber ich will die Schnittmenge.

4voto

Gauri Bhosle Punkte 4165

Das folgende Beispiel zeigt Ihnen, wie Sie mehrere verschachtelte Klassenselektoren und direkte Klassenselektoren in einer Zeile auswählen können

//Here is Explaination of Selectors  
//.a .b .c  = selects nested child c which is inside of div a and b
//.a .d     = selects nested child d which is inside of div a 
//.f        = selects direct element ie div f which is outside of div a and b
$('.a .b .c , .a .d, .f').css('background-color', 'grey');

<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 class="c">c</div>
  </div> 
  <div class="d">d</div>
</div>
<div class="e">e</div>
<div class="f">f</div>

3voto

bahman parsamanesh Punkte 2194

Sie können verwenden getElementsByClassName() Methode für das, was Sie wollen.

var elems = document.getElementsByClassName("a b c");
elems[0].style.color = "green";
console.log(elems[0]);

<ul>
  <li class="a">a</li>
  <li class="a b">a, b</li>
  <li class="a b c">a, b, c</li>
</ul>

Dies ist auch die schnellste Lösung. Sie können einen Benchmark dazu sehen aquí .

2voto

Karim Ali Punkte 1785

Var elem = document.querySelector(".a.b");

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X