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

$("a")

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


当前回答

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

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

我发现:lt(20)在这种情况下没有错误。我大概有上万个匹配的元素。

其他回答

使用lt伪选择器:

$("a:lt(n)")

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

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

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

我发现:lt(20)在这种情况下没有错误。我大概有上万个匹配的元素。

$("a:lt(n)")

JQuery文档

你应该好好研究一下切片。你的代码看起来像这样:

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

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

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