jQuery-如何找到下一个没有类的同级?
我有一个列表,它有一个动态设置的扩展类。我在查找仅与可见元素相关的下一个列表项时遇到问题<当选择器在jQuery-如何找到下一个没有类的同级?,jquery,jquery-selectors,Jquery,Jquery Selectors,我有一个列表,它有一个动态设置的扩展类。我在查找仅与可见元素相关的下一个列表项时遇到问题
jQuery('.expanded')
上时,同级(':visible')和.next(':visible')
似乎不起作用,可能是因为它正在查找下一个扩展的类
<ul id="list_1" class="list">
<li class="gridImage" data-id="Christmas"></li> //not visible
<li class="gridImage" data-id="Christmas"></li> //not visible
<li class="gridImage expanded" data-id="Easter"></li>
<li class="gridImage" data-id="Valentines"></li> //not visible
<li class="gridImage" data-id="Easter"></li>
<li class="gridImage" data-id="Miscellaneous"></li> //not visible
</ul>
//不可见
//不可见
//不可见
//不可见
您可以尝试以下方法
.nextUntil(':visible').last().next()
也就是说,找到所有的同级,直到下一个可见的同级,然后从集合中取出最后一个同级(因此它的下一个同级应该是可见的同级),然后是它的下一个同级。这里是另一种方法:
与next类似,但它会获取与选择器匹配的以下所有同级。第一个只取第一个。是什么使
li
可见?@slicedtoad另一个列表使用show()
和hide()
使li
可见/不可见。这对我上面显示的代码有效,但在扩展类和可见/不可见项开始更改时不起作用。回答不错,我也试过,但你以前回答过;)
$('.expanded').nextAll(":visible").first()