Pseudoclasa :has în jQuery
Pseudoclasa
has
selectează elementele în funcție de conținutul lor. Să analizăm un exemplu.
Să presupunem că avem următorul cod HTML:
<p>text cu tag <b>b</b></p>
<p>text cu tag <i><b>b</b></i></p>
<p>text</p>
Spre exemplu,
să selectăm toate paragrafele în interiorul cărora se află tag-uri
b:
$('p:has(b)');
Atenție la faptul că în exemplu vor fi selectate
atât primul paragraf, cât și al doilea, în pofida
faptului că în al doilea paragraf tag-ul b
nu se află direct în interiorul lui p,
ci este mai întâi în i.
Dacă aveți nevoie de o imbricare directă, atunci ar trebui să faceți astfel:
$('p:has(>b)');
În acest caz, va fi selectat doar primul paragraf.
Obțineți și colorați în roșu toate
h2, în interiorul cărora se află tag-ul i.
Obțineți și colorați în roșu toate
h2, care conțin direct
tag-ul i.