Pseudoklasse :has in jQuery
Die Pseudoklasse
has
wählt Elemente nach ihrem Inhalt aus. Betrachten wir ein Beispiel.
Nehmen wir an, wir haben den folgenden HTML-Code:
<p>text with <b>b</b> tag</p>
<p>text with <i><b>b</b></i> tag</p>
<p>text</p>
Wählen wir zum Beispiel
alle Absätze aus, in denen sich
b-Tags befinden:
$('p:has(b)');
Beachten Sie, dass im Beispiel sowohl
der erste als auch der zweite Absatz ausgewählt werden, obwohl
im zweiten Absatz das b-Tag
nicht direkt innerhalb von p liegt,
sondern zunächst in einem i.
Wenn Sie jedoch eine direkte Verschachtelung benötigen, sollten Sie dies wie folgt tun:
$('p:has(>b)');
In diesem Fall wird nur der erste Absatz ausgewählt.
Erhalten Sie alle
h2, in denen sich ein i-Tag befindet, und färben Sie sie rot.
Erhalten Sie alle
h2, die direkt ein
i-Tag enthalten, und färben Sie sie rot.