Javascript 查找最后一个div中最近的div-与其他div混淆

Javascript 查找最后一个div中最近的div-与其他div混淆,javascript,jquery,html,Javascript,Jquery,Html,我有这样的想法: <div class="sidebar"> <script></script> <div class="a"></div> <div class="b"></div> <script></script> <div class="c"></div> </div> a组和b组可以有任何级别。 我知道如何按类获取任何div,但类可以是不

我有这样的想法:

<div class="sidebar">
<script></script>
<div class="a"></div>
<div class="b"></div>
<script></script>
<div class="c"></div>
</div>

a组和b组可以有任何级别。 我知道如何按类获取任何div,但类可以是不同的

i如何查找最后一个div.c中最近的前一个div

$("div.c").prev() = gives me <script>;
$("div.c").prev('div') = gives me {nothing};
$("div.c").closest() = gives me the same div;
$(“div.c”).prev()给我;
$(“div.c”).prev('div')=给我{nothing};
$(“div.c”).closest()=给我相同的div;
记住我不知道具体的课程。 谢谢你的帮助

试着在这种情况下使用

$("div.c").prevAll('div:first')

请参见,基本上,
.prev()
等于
.previousElementSibling
,它将根据选择器选择源元素的前一个元素同级(而不是textNode/commentNode等)。它不会根据提供的选择器跳过元素以获取目标元素。

您可以使用
prev().prev()

我发现这是一个非常自然的解决方案…:-)

$(“div.c”).prev('div')
仅在前一个兄弟是div而不是div时才起作用。+1或
$('div.c”).prevAll('div').first()
$('div.c”).prevAll('div').eq(0)
注意
prevAll
以选择顺序而不是DOM顺序返回元素。i、 e.元素以最接近的同级开始的顺序返回。
$('div.c').prev().prev().css('font-weight', 'bold');