6

有没有一种简单的方法可以使用 jQuery 选择每个列表的最后一个 li?

<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
</ul>
<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>
<ul>
    <li>1</li>
    <li>2</li>
</ul>

我已经尝试过这两种方法,但它们都只返回一个元素。

$("ul li").last()
$("ul li:last")

我会使用 CSS :last-child 伪类,但由于它是在 CSS3 中引入的,而 IE8 不支持它,我不能

4

3 回答 3

5

选择:last-child器是您所需要的。与 CSS3 选择器的逻辑相同:last-child,但您可以在 jQuery 中自由使用它,因为即使浏览器的 CSS 引擎不理解它,jQuery 也会为您提供它。

$("ul li:last-child")

从文档中:

虽然:last只匹配一个元素,:last-child但可以匹配多个:每个父元素一个。

附上漂亮的小演示

于 2013-07-18T15:03:38.677 回答
5

我会使用 CSS :last-child 伪类,但由于它是在 CSS3 中引入的,而 IE8 不支持它,我不能

你可以因为你使用 jQuery 来选择你的元素,因为 jQuery 自己实现了它,所以在 CSS 中不支持它的浏览器仍然可以使用它:

$("ul li:last-child")
于 2013-07-18T15:03:40.097 回答
1

解决方案:

$(document).ready(function()
                  {
                      $('ul li:last-child').css("color","red");
                  });

检查这个小提琴:http: //jsfiddle.net/ganeshprabhu1994/surve/2/

于 2013-07-18T15:14:29.353 回答