在jQuery中选择父母的下一个兄弟的孩子

这是我的DOM的一部分的说明:

在此处输入图像描述

我想在div的click事件上触发对div的影响(这是一个奇怪的divbut (在之前的偶数div

我怎样才能从中选择des

平凡的,如果this是点击的.but元素:

 $(this).parent().next().children('.des') 

这确实假设在路上没有其他元素,即.odd.odd元素是直接兄弟姐妹,而.des.des则是他们各自的.odd.odd祖先的孩子。

效率较低,但保证与树中任意数量的其他(非匹配)元素一起使用将是:

 $(this).closest('.even').nextAll('.odd').first().find('.des') 

这取决于你的标记。 但是这样的东西应该可行:

 $('.but').on('click', function () { $(this).closest('.even').next().find('.des'); });