(Bu) Jquery $Çocuk Seçici
Bir sayfada bu kullanıyorum:
jQuery('.class1 a').click( function() {
if ($(".class2").is(":hidden")) {
$(".class2").slideDown("slow");
} else {
$(".class2").slideUp();
}
});
Sayfanın üstü bir yapıya sahip olduğunu şöyle:
<div class="class1">
<a href="...">text</a>
<div class="class2">text</div>
</div>
Bu gibi class1/Sınıf 2 ayarlar multipule olması dışında iyi çalışıyor,:
<div class="class1">
<a href="...">text</a>
<div class="class2">text</div>
</div>
<div class="class1">
<a href="...">text</a>
<div class="class2">text</div>
</div>
<div class="class1">
<a href="...">text</a>
<div class="class2">text</div>
</div>
Nasıl sadece tıklanma akım class1 altında Sınıf 2 etkileri ilk jquery kodunu değiştirebilirim? Bu sayfa üzerinde tavsiye edilmiştir ne varyasyonları denedim: $(this) selector and children? ama sığınak henüz işe aldık
CEVAP
Sen HTML ile muhtemelen en iyi yolu next
fonksiyon gibi kullanmak olacaktır:
var div = $(this).next('.class2');
Tıklatma işleyicisi <a>
oluyor bu yana da ana DİV, ikinci DİV için arama aşağı gez. parent
children
kombinasyonu ile bunu. Bu yaklaşım, eğer sen Ekle HTML tam olarak böyle olmasa iyi olurdu ve ikinci DİV başka bir yere bağlantı için göreceli olabilir:
var div = $(this).parent().children('.class2');
Eğer "" acil çocuklarla sınırlı değil, örneğin children
yukarıda. yerine find
kullanırsınız arama istersen
Ayrıca, her zaman en iyi etiket adı ile sınıf seçiciler önüne mümkün. <div>
etiketler bu sınıflar için gidiyoruz eğer, sadece yani, seçici 17*, div.class2
*yap.
JQuery seçici ne dışlar belirli bir se...
jQuery Seçici: Id İle Biter?...
açısal.element vs belge.getelementbyıd...
-Çocuk son seçici kullanarak...
Jquery seçici z-ındex Yayın tarihi...