如何选择留下第一个元素的所有元素?

时间:2011-09-21 16:42:00

标签: jquery

我有像jquery选择器

$("li a")

如何修改它以便选择留下第一个锚标记的所有元素?

2 个答案:

答案 0 :(得分:7)

.not用于排除元素,伪选择器:first用于获取第一个元素。 您可以将两者结合起来排除第一个元素,如下所示:

$("li a").not(":first");

或者您可以使用:not伪选择器:

$("li a:not(:first)");

<强>更新

我有profiled三种不同的方法,似乎使用.not方法和:first选择器更快(在Chrome 14中测试)。

另一个更新,在阅读@Jon的jQuery文档评论后...使用.slice明显快于所有jQuery方法!以下是Chrome 14上测试结果的屏幕截图:

enter image description here

答案 1 :(得分:5)

您可以使用:gt selector

$("li a:gt(0)")

更新:如果您对效果感兴趣,目前最快的是

$("li a").slice(1)

关于哪些文档说:

  

因为:gt()是jQuery扩展而不是CSS的一部分   规范,使用:gt()的查询无法利用   本机DOM提供的性能提升querySelectorAll()   方法。要在现代浏览器中获得更好的性能,请使   而是$("your-pure-css-selector").slice(index)