我正在尝试访问倒数第二个li
。我尝试了以下代码,但它不起作用:
$('ul#selectTheme li:last').eq(-1).addClass('selected');
我该怎么做?
答案 0 :(得分:4)
尝试使用:nth-last-child()
selector:
$('ul#selectTheme li:nth-last-child(2)').addClass('selected');
答案 1 :(得分:2)
我相信你可以简单地将一个减号传递给.eq()
以从最后得到第n个元素。 -1是最后一个元素,依此类推。
$('ul#selectTheme li').eq(-2).addClass('selected');
请点击此处了解更多详情 - .eq()
答案 2 :(得分:1)
答案 3 :(得分:0)
您可以使用length属性来获取此信息:
var themes = $('#selectTheme li');
$(themes[themes.length - 2]).addClass('selected');
这样做的好处是不使用任何较慢的jQuery伪选择器。
我也省略了选择器的ul
部分,因为这是不必要的 - id选择器足够具体。
答案 4 :(得分:0)
试试这个:
$('ul#selectTheme li').eq(-2).addClass('selected');
您的案例似乎与文档中提供的示例非常相似:http://api.jquery.com/eq/