jQuery .nextAll()子集过滤

时间:2013-04-19 00:04:11

标签: jquery jquery-selectors

<ul>
   <li>list item 1</li>
   <li>list item 2</li>
   <li class="block">list item 3</li>
   <li>list item 4</li>
   <li>list item 5</li>
   <li class="block">list item 6</li>
   <li>list item 7</li>
   <li>list item 8</li>
</ul>

您如何仅收集第4项和第5项

$('li.block').nextAll()当然会返回第4项到第8项,包括6。

我想知道最好的方法是什么。 $.each()上带有过滤功能的一些丑陋li's循环听起来令人沮丧。我希望只选择一种选择器......到目前为止都失败了。

2 个答案:

答案 0 :(得分:4)

nextUntil()可能就是你想要的。

$('li.block').first().nextUntil('.block');

jsFiddle

答案 1 :(得分:1)

我正在做出一个假设,但这有效:

$('li.block')
    .first()
    .nextUntil(".block")
    .css("background-color","yellow")

DEMO:http://jsfiddle.net/gvwwy/2/