Псеўдаклас :has у jQuery
Псеўдаклас
has
выбірае элементы па іх змесце. Разгледзім прыклад.
Няхай у нас ёсць наступны HTML код:
<p>text with <b>b</b> tag</p>
<p>text with <i><b>b</b></i> tag</p>
<p>text</p>
Дапусцім,
выбяром усе абзацы, унутры якіх ёсць тэгі
b:
$('p:has(b)');
Звярніце ўвагу на тое, што ў прыкладзе выбярецца
як першы абзац, так і другі, нягледзячы
на тое, што ў другім абзацы тэг b
не ляжыць непасрэдна ўнутры p,
а ляжыць спачатку ў i.
Калі ж вам патрэбная непасрэдная ўкладзенасць, то варта зрабіць так:
$('p:has(>b)');
У гэтым выпадку будзе выбраны толькі першы абзац.
Атрымайце і афарбуйце ў чырвоны колер усе
h2, унутры якіх ёсць тэг i.
Атрымайце і афарбуйце ў чырвоны колер усе
h2, якія непасрэдна ўтрымліваюць
тэг i.