将类添加到子元素但不添加到父元素

时间:2014-11-07 23:14:31

标签: jquery select

我想一次向一个元素添加一个类。该元素可以是click元素也应用于的父元素的子元素。什么是将类添加到子元素的最佳方法,而不是父元素。下面是一个例子,单击子div并看到该类也被添加到所有父元素。我可以想到几种方法,但我想确保我使用最好的解决方案。基本上我希望只将类添加到单击的元素中,而不管它的父类是否具有相同的类。

http://codepen.io/anon/pen/aiGJb

<div id="parent" class="element">
  <div id="child" class="element">
   <div id="childdd" class="element"></div>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

我认为你的问题在于“冒泡”。
这是对这种“泡沫”魔法如何运作的重要解释 “鼓泡和捕捉”文章:http://javascript.info/tutorial/bubbling-and-capturing

您的解决方案是使用点击处理程序末尾的return false;停止“冒泡”:

$(".element").on("click", function() {
    $(this).addClass("active"); 
    return false;
});