2011-09-21 144 views

回答

5

可以使用:gt selector

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

更新:如果你有兴趣在性能上,最快到目前为止是

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

关于哪个文档说:

由于:gt()是一个jQuery扩展且不部分CSS 说明书,使用:gt()查询不能利用由本机DOM querySelectorAll() 方法提供的 性能提升。为了在现代浏览器中获得更好的性能,请改用 $("your-pure-css-selector").slice(index)

+2

哪一个会更快GT或.not? :) –

+1

我可能会说'gt',因为它可以执行一次性操作(切断第一个元素),而不是必须将每个元素与它需要排除的元素进行比较。但是这个问题确实没有实际意义 - 两者都会比你所知道的要快。 – Jon

+0

关于哪一个是最快的:http://jsperf.com/jq-gt-vs-first –

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

+0

或者您可以使用':gt'伪选择器!有很多种方法! –

相关问题