Selektor has

Selektor :has wybiera elementy, które zawierają co najmniej jeden element zgodny z podanym selektorem, niekoniecznie bezpośredniego potomka. Ponieważ :has nie należy do specyfikacji CSS, dla poprawy wydajności we współczesnych przeglądarkach lepiej zamiast niego używać $("twój selektor-css").has(selektor/element DOM).

Składnia

W ten sposób wybieramy elementy:

javascript$(':has(selektor)');

W ten sposób wybieramy elementy, jeśli potrzebne jest bezpośrednie zagnieżdżenie selektora:

javascript$(':has(>selektor)');

Przykład

Wybierzmy tylko te akapity, które mają w środku tag b i dodajmy na ich końcu tekst '!!!':

html<p>text</p>
<p>text</p>
<p><b>bold</b> text</p>
<p><b>bold</b> text</p>
javascript$('p:has(b)').append('!!!');

Kod HTML będzie wyglądać tak:

html<p>text</p>
<p>text</p>
<p><b>bold</b> text!!!</p>
<p><b>bold</b> text!!!</p>

Zobacz też

  • metoda has,
    która filtruje zestaw wybranych elementów według potomków
  • metoda filter,
    która filtruje elementy w zestawie według podanego selektora