使用jQuery选择第一个“n”项

时间:2009-12-08 08:38:02

标签: jquery

使用Jquery,我需要从页面中选择第一个“n”项,例如前20个链接而不是通常用

选择所有项目
$("a")

听起来很简单,但jQuery手册没有这样的证据。

6 个答案:

答案 0 :(得分:362)

您可能希望阅读slice。您的代码将如下所示:

$("a").slice(0,20)

答案 1 :(得分:87)

使用lt伪选择器:

$("a:lt(n)")

这匹配第n个元素之前的元素(排除第n个元素)。编号从0开始。

答案 2 :(得分:21)

我在lt() docs

的末尾找到了这个说明
  

附加说明:   
  因为:lt()是一个jQuery扩展而不是CSS规范的一部分,使用:lt()的查询无法利用本机DOM querySelectorAll()方法提供的性能提升。为了在现代浏览器中获得更好的性能,请使用$(“your-pure-css-selector”)。切片(0,索引)代替。

因此,请使用$("selector").slice(from, to)以获得更好的表现。

答案 3 :(得分:11)

尝试:lt选择器:http://docs.jquery.com/Selectors/lt#index

$('a:lt(20)');

答案 4 :(得分:6)

.slice()并不总是更好。在我的情况下,使用Chrome 36中的jQuery 1.7,.slice(0,20)失败并出现错误:

RangeError:超出最大调用堆栈大小

我发现:在这种情况下,lt(20)没有错误地工作。我可能有成千上万的匹配元素。

答案 5 :(得分:2)

$("a:lt(n)")

JQuery Documentation