⊗jqBsEM 30 of 113 menu

jQuery'de each Metodu ile Çalışma

jQuery kullanarak elde ettiğimiz bir grup öğeye sahip olduğumuzda, değişiklikleri yalnızca tüm öğeler için aynı anda yapabiliriz.

Örneğin, bulunan tüm paragrafların metnini değiştirmek istiyorsak, metni farklı yapmamız mümkün olmaz.

Bu durumda, jQuery kümesindeki tüm öğelere bir işlev uygulamamıza izin veren özel each metodu yardımcı olur. Bu işlev içinde, öğeleri ayırabilir ve her biriyle farklı şekilde ilgilenebiliriz.

Aslında each, bulunan tüm öğeleri üzerinde dolaşabileceğimiz bir döngüdür. Şu anda döngünün üzerinden geçtiği öğeye bağlantı this içinde bulunur.

Daha önce yaptığımız gibi, sade JavaScript'te bu this'ı kullanabiliriz, örneğin şu şekilde - this.innerHTML - ve öğelerimizin iç içeriğini gösterebiliriz. Ama daha iyisi, this'ı jQuery doları içine şu şekilde sarmaktır - $(this) - bu durumda ona jQuery'nin tüm metodlarını ve zincirlerini uygulayabiliriz.

Şu HTML kodunu inceleyelim:

<p class="www">text</p> <p class="www">text</p> <p class="www">text</p> <p>text</p>

Bu örnekte, www sınıfına sahip tüm öğeleri elde etmeli ve içeriklerini ekranda göstermeliyiz. Nasıl yapılır: $('.www') ile ihtiyacımız olan öğeleri elde ederiz, ardından each(test) kullanarak elde edilen her öğeye test işlevini uygularız. İşlev önce ilk paragrafa uygulanır, sonra ikinciye, üçüncüye ve bu şekilde devam eder.

İşlev içinde this, işlevin uygulandığı öğeyi gösterecektir - önce bu ilk öğe olacak, sonra ikinci ve bu şekilde devam edecek. $(this) gibi bir yapı ile, normal JavaScript this'ı yerine bir jQuery öğesi elde ederiz ve ona html metodunu uygularız, bu metod öğemizin metnini alır. Sonrasında ise basitçe ekranda gösterilir:

/* test fonksiyonunun adını tırnaksız ve () olmadan yazıyoruz, çünkü onun koduna ihtiyacımız var, sonucuna değil: */ $('.www').each(test); function test() { alert($(this).html()); }

Bu görevi çözmek için anonim fonksiyonlar da kullanılabilir - bu genellikle daha sık yapılır:

$('.www').each(function() { alert($(this).html()); });

Ayrıca each metoduna parametreli bir callback fonksiyonu da iletebiliriz.

Şimdi bir sonraki örnekte, sayfadaki tüm li öğelerinin sonuna sıra numaralarını ekleyelim. Şimdi anonim fonksiyonumuza öğenin indeksini ve kendisini ileteceğiz:

$('li').each(function (index, elem) { $(elem).append(index); });

Şimdi elem yerine this kullanalım:

$('li').each(function (index) { $(this).append(index); });

Tüm li öğelerinin içeriğini sıra numaralarıyla değiştirin.

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet