2014-02-12 39 views
1

後,我有以下結構:添加類遍歷了普通話了一棵樹

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

我想點擊的div與classE類,並添加一類類的div classB

這是什麼我想,但它的失敗:

$(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所以應該找到它?

+0

它是對的,你搜索'(「CLASSA」)'碼的最後一位一個錯字,沒有一個全停下來? – Archer

回答

2

只需使用:

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

更新:

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

道歉,我原來的結構不正確,更新OP –

+0

Ffs對不起,現在結構是正確的 –

+0

更新回答.. –

1

最近應該工作以及和你沒有必要去一路攀升至CLASSA。在.parent()的作品,以及在給定的代碼

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

你可以添加比直接代碼更多的價值?你的答案完全是這樣的。 – digitalextremist