仅在'.class:first'之后和之前'.class:last'之前的jquery选择器

时间:2014-08-03 13:52:21

标签: jquery jquery-selectors

我需要在:last选择器(真正的倒数第二)之前找到并设置类的样式,
和仅在:first选择器之后的类(真正的第二个)。

我尝试过nth-child()nth-last-child()
但是他们不会只选择整个页面上的倒数第二个,而只选择第二个类..

$('.myClass:first             ').addClass("myClassStart");
$('.myClass:nth-child(2)      ').addClass("myClassStart2");
$('.myClass:nth-last-child(2) ').addClass("myClassEnd2");
$('.myClass:last              ').addClass("myClassEnd");

DEMO

注意:只有:first:last选择器才能正常运作

1 个答案:

答案 0 :(得分:1)

实现此目的的一种简单方法是使用:eq()选择器:

$(".myClass:eq(1)").addClass("myClassStart2");
$(".myClass:eq(-2)").addClass("myClassEnd2");

:eq()从零开始,传递1匹配集合中的第二个元素。如果输入一个负数,则:eq()会从-1开始,从该组的末尾向后匹配,因此-2匹配倒数第二个元素。

您会找到更新的小提琴here