Selektor has

Selektor :has vybírá prvky, které obsahují alespoň jeden prvek podle zadaného selektoru, ne nutně přímého potomka. Protože :has nepatří do specifikace CSS, pro lepší výkon v moderních prohlížečích je lepší místo něj používat $("váš css-selektor").has(selektor/DOM element).

Syntaxe

Takto vybíráme prvky:

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

Takto vybíráme prvky, pokud je požadována přímá vnořenost selektoru:

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

Příklad

Vyberme pouze ty odstavce, které uvnitř mají prvek b a přidejme na konec text '!!!':

html<p>text</p>
<p>text</p>
<p><b>tučně</b> text</p>
<p><b>tučně</b> text</p>
javascript$('p:has(b)').append('!!!');

HTML kód bude poté vypadat takto:

html<p>text</p>
<p>text</p>
<p><b>tučně</b> text!!!</p>
<p><b>tučně</b> text!!!</p>

Viz také

  • metoda has,
    která filtruje sadu vybraných prvků podle potomků
  • metoda filter,
    která filtruje prvky v sadě podle zadaného selektoru