jQuery .filter() Metodu

jQuery’de bulunan metodlar içinde en sevdiğimdir. Çünkü büyük ölçüde işimi kolaylaştırıyor.
Örneğin bir nesneyi değişkene aktardım.

var tab = $('.tab li');

Şimdi burada ilk elemanı seçip addClass metodunu uygulamam gerektiğinde bunu filter ile belirtiyorum.

tab.filter(':first').addClass('active');

Böylece değişkenin taşıdığı nesnelerde filtreleme işlemi yapıp ilk elemanı seçmemi sağlıyor.
Tabi sadece ilk eleman için değil :not(), :eq(), this vb. bir çok şey için geçerlidir. Örneğin küçük bir tab uygulaması yapacak olsaydık işimiz çok kısa olacaktı;

var tab = $('.tab li'),
content = $('.tab-content');

content.filter(':not(:first)').hide();
tab.filter(':first').addClass('active').end().on('click', function(e){
    tab.removeClass('active').filter(this).addClass('active');
    content.hide().filter(':eq(' + $(this).index() + ')').show();
    e.preventDefault();
});

Ya da örneğin daha farklı bir örnek verelim;

$('.item').filter(function(index){
    return $( this ).hasClass('boxed');
}).addClass('active');

http://api.jquery.com/filter/

İşte böyle, kolay gelsin 🙂

Yayınlayan

Tayfun Erbilen

2009’dan beri web işleriyle uğraşan, aynı zamanda amatör müziklede ilgilenen sıradan birisi..

“jQuery .filter() Metodu” üzerine 5 yorum

  1. Ders için teşekkürler.
    Bir sorum olacak.

    var tab = $(‘.tab li’),
    content = $(‘.tab-content’);

    Burada contentin başında var olması gerekmiyormu?

  2. selam,

    on(‘click’) burda neden “on” click kullandık normal “click” niye kullanmadık acaba? “on” olduğu için birde bunun “off” özelliği olduğu için mi kullandın?
    birde böyle bir kullanım daha var $(“body”).on(“click”,”selector”,function()

    😀

    teşekkürler

    1. Normal click te kullanabilirsin. 2. verdiğin örnek jquery’nin eski versiyonlarındaki live metoduna eş değer. Yani sonradan eklenen nesneler için event uygulama olayı.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir