我读了一个问题的答案,该问题表明closest()
方法仅适用于父元素。所以我做了一个示例,显示了三个带有<ul>
个孩子的<li>
元素。我在第二个<ul>
上应用了jQuery代码,以查看closest()
方法是否定位前一个最接近的元素或下一个最接近的元素;我很惊讶它是针对当前元素的,这是第二个<ul>
。
HTML
<ul class="ul-1">
<li>UL 1 - Li 1</li>
<li>UL 1 - Li 2</li>
<li>UL 1 - Li 3</li>
<li>UL 1 - Li 4</li>
</ul>
<ul class="ul-2">
<li>UL 2 - Li 1</li>
<li>UL 2 - Li 2</li>
<li>UL 2 - Li 3</li>
<li>UL 2 - Li 4</li>
</ul>
<ul class="ul-3">
<li>UL 3 - Li 1</li>
<li>UL 3 - Li 2</li>
<li>UL 3 - Li 3</li>
<li>UL 3 - Li 4</li>
</ul>
的jQuery
$('.ul-2').closest('ul').css('background','red');
我使用closest()
方法错了吗?
答案 0 :(得分:1)
您正在寻找.siblings
或.prev
:
$('.ul-2').prev('ul').css('background','red');
.closest
- 家长。.prev
- 以前的兄弟姐妹。.next
- 下一个兄弟姐妹。