jQuery slidedown最初の子レベルの要素
質問
私はこのような別のクラスのdiv( 'items')を含む1つのクラスのdiv( 'open')を持っています。
<div class="open">
<div class="item">
this is a test 1
</div>
<div class="item">
this is a test 2
</div>
</div>
私がやりたいのは、クリックされている「オープン」クラスにあるすべての「アイテム」クラスDivのスライドタウンです。
これまでのところ私は持っています
$(document).ready(function () {
$('.open').click(function () {
$(this).find(':first-child').slideDown('1000');
});
しかし、それは機能していません。助言がありますか?
ありがとう、ジョン
解決
それ以外の :first-child
あなたが欲しい すぐ近くの子供, 、この場合に使用できます .children()
, 、 このような:
$('.open').click(function () {
$(this).children().slideDown('1000');
});
:first-child
各レベル(および各「ブランチ」)で最初の子要素を取得するためのためです。 .children()
または チャイルドセレクター(>
) すべての即時/「第一レベル」の子供を獲得するためです。
他のヒント
どうですか
$(".open").click(function() {
$(this).children().slideDown(1000);
});
まず、私はあなたが実際に閉じていると思います $(document).ready
, 、投稿したコードブロックでは、閉じられていません。コードでそうしていることを確認してください。
第二に、あなたはただ探していません children()
の .open
?その場合、あなたが望む
$(document).ready(function() {
$('.open').click(function() {
$(this).children('.item').slideDown('1000');
});
});
編集: :コメントのおかげで、削除しました live()
提案。
所属していません StackOverflow