2012-04-06 6 views
2

私はこの要素の1つをクリックして同じレベルから "mixitup"要素だけを選択したいと思います。さまざまなDOMレベルから同様の要素をjqueryで選択するにはどうすればよいですか?

<div data-id="0"> 
    <div class="mixitup">1</div> 
    <div class="mixitup">2</div> 
    <div class="mixitup">3</div> 
</div> 
<div data-id="1"> 
    <div class="mixitup">4</div> 
    <div class="mixitup">5</div> 
    <div class="mixitup">6</div> 
</div> 

を意味します。コンテンツが4のDIVをクリックすると、DIVs 4,5,6を選択したいと思います。

誰かがそれを行う方法を知っていますか?あなたが必要なもの おかげ

答えて

0

は兄弟セレクタです:

$('.mixitup').click(function(){ 
    $(this).siblings('.mixitup'); //this selects siblings of an element; 
}) 
5

あなたが選んだものを含め、それらのすべてを選択します。セルフ要素を含むhttp://jsfiddle.net/kwnDS/1/

$('.mixitup').on('click', function() { 
    $(this).siblings().andSelf(); 
}); 
+0

以前の試合の選択を忘れないようにしてください。 – Anthony

1

兄弟は、親を見つけることによって達成し、その子(ない子孫)のすべてを選択することになります。

$(".mixitup").click(function() { 
    $(this).parent().children().doSomething(); 
}); 
+1

'$(this)).parent()。children(" div.mixitup ")。doSomething();' – ocanal

+0

私は同意しますが、すべての兄弟を選択することがわかっていれば不要です。親div内に他の子があった場合、私は間違いなくchildren()のセレクタを追加します。この場合、無視すると(該当する場合)、余分な処理が減ります。 – Ian

1

クリックした要素の親を選択することを避けるために、

$(".mixitup").on("click", function(e) { 
    $('.mixitup').removeClass('clicked'); 
    $(this).siblings().andSelf().addClass("clicked"); 
}​); 

http://jsfiddle.net/crazytonyi/G4Bny/

:あなたは、単にそれが兄弟と自分自身を選択する必要があります3210
関連する問題