Jquery: closest() 与其他 div class 不工作

Jquery: closest() with other div class not working

我不明白,为什么 closest() 不能与其他 div class 选择器一起使用。请参阅示例:感谢您的帮助

<div class="level1">Some Text</div>
<div class="level1">Some Text 2</div> 
<div class="level2">level2 Text</div>

<div class="result">result</div>


var txt = $('.level2').closest('.level1').text();
$('.result').text("result: " + txt );

因为它们不是嵌套的。 closest 搜索祖先,而不是兄弟姐妹。

如果您想要最近的前一个兄弟姐妹,那就是 .prevAll(".level1").first() (prevAll, first)。

实例:

var txt = $('.level2').prevAll('.level1').first().text();
$('.result').text("result: " + txt );
<div class="level1">Some Text</div>
<div class="level1">Some Text 2</div> 
<div class="level2">level2 Text</div>

<div class="result">result</div>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>