2

我只想从同一级别中选择“mixitup”元素,单击其中一个元素。

<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,我想选择 DIV 4,5 和 6。

有人知道一种方法吗?谢谢

4

4 回答 4

5

如果您想选择所有这些,包括您选择的那个。http://jsfiddle.net/kwnDS/1/

$('.mixitup').on('click', function() {
    $(this).siblings().andSelf();
});
于 2012-04-06T22:31:01.697 回答
1

兄弟姐妹,包括 self 元素,将通过查找父节点并选择其所有子节点(而不是后代)来完成:

$(".mixitup").click(function () {
    $(this).parent().children().doSomething();
});
于 2012-04-06T22:37:13.063 回答
1

为了避免选择被点击元素的父元素,你应该简单地选择它的兄弟元素和它自己:

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

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

于 2012-04-06T23:06:25.170 回答
0

您需要的是兄弟姐妹选择器:

$('.mixitup').click(function(){
  $(this).siblings('.mixitup'); //this selects siblings of an element;
})
于 2012-04-06T22:27:14.577 回答