Metóda filter
Metóda filter ponecháva v súbore len
tie prvky, ktoré vyhovujú
určenému selektoru.
Syntax
Filtrovanie podľa selektora:
.filter(selektor);
Parameter môže byť tiež DOM elementmi alebo jQuery objektom:
.filter(DOM element alebo jQuery objekt);
Prvky je možné filtrovať aj pomocou
funkcie, ktorá je volaná samostatne pre
každý z vybraných prvkov. Ak vráti
true, tak aktuálny prvok bude
zahrnutý do konečného výsledku, ak false
- nezahrnutý. Samotné prvky sú v funkcii
dostupné, v premennej this, a ich poradové čísla
v súbore — v premennej index:
.filter(function(index, elem))
Príklad
Nájdeme všetky odseky, vložíme im na
začiatok text '!' pomocou
prepend,
potom získame z nájdených len odseky
s triedou www pomocou filter
a vložíme im na koniec text '?' pomocou
append:
<p>text</p>
<p>text</p>
<p class="www">text</p>
<p class="www">text</p>
$('p').prepend('!').filter('.www').append('?');
HTML kód bude vyzerať takto:
<p>!text</p>
<p>!text</p>
<p class="www">!text?</p>
<p class="www">!text?</p>
Príklad
Pomocou funkcie nájdime všetky
odseky, ktoré majú tag
strong
a vložíme im text '!!!':
<p><strong>text</strong></p>
<p><strong>text</strong></p>
<p>text</p>
<p>text</p>
$('p').filter(function() {
return $('strong', this).length === 1;
}).html('!!!');
HTML kód bude vyzerať takto:
<p>!!!</p>
<p>!!!</p>
<p>text</p>
<p>text</p>