在遍历树上后添加类

时间:2014-02-12 17:00:38

标签: jquery

我有以下结构:

<li>
    <div class="classA">
        <div class="classB"></div>
        <div class="classC"></div>
        <div class="classD">
            <div class="classE"></div>
        </div>
    </div>
</li>

我想点击课程classE的div,然后使用课程classB

为div添加课程

这就是我正在尝试的但却失败了:

$(document).on('click', '.classE', function() {
    $(this).closest('li').find('.classB').addClass('addMe');
});

我也试过了:

$(document).on('click', '.classE', function() {
    $(this).closest('classA').find('.classB').addClass('addMe');
});

我认为他们都是classB的父母,虽然已被删除,所以应该找到它吗?

3 个答案:

答案 0 :(得分:2)

只需使用:

$(this).closest('.classB').addClass('addMe');

更新

 $(this).parent().siblings('.classB').addClass('addMe');

答案 1 :(得分:1)

最近也应该工作,你不需要一直到classA。 .parent()在给定代码

中也可以正常工作
$(document).on('click', '.classE', function() {
    $(this).closest('.classB').addClass('addMe');
});

答案 2 :(得分:0)

$(document).on('click', '.classE', function() {
  $(this).closest('.classB').addClass('addMe');
}