在点击与其父级具有相同类别的子div时,应将某个类添加到子div而不是父div,反之亦然

时间:2016-03-18 09:29:22

标签: javascript jquery

我有以下html结构。

<div class="someclass">
    <div class="someclass"></div>
</div>

所以当我点击子div“someclass”时,其他一些类说“test”应该加到它上面,但是那个类不应该添加到父div.someclass中,如果我点击父div那么“test”类应该被添加到父div而不是子div

1 个答案:

答案 0 :(得分:2)

使用.addClass并使用this上下文。 stopPropogation不会在parent元素上播放该事件。

$('.someclass').on('click', function(e) {
  e.stopPropagation();
  $('.someclass').removeClass('test');
  $(this).addClass('test');
})
.test {
  color: red!important;
}
.someclass {
  color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div class="someclass">Parent
  <div class="someclass">Child</div>
</div>