:lt(index)

选择匹配集合中所有索引值小于给定 index 参数的元素。

jQuery(":lt(index)")

index: 从 0 开始计数的索引值。

jQuery(":lt(-index)")

-index: 从0开始计数的索引值。从最后一个元素开始反向计数。

index-related selectors(索引相关的选择)

这种索引相关的选择器(包括这个“小于”选择器)会在先前提供的选择器筛选出的元素基础上再进行筛选。进一步筛选的依据就是这个元素在原先匹配集合中的顺序。举例来说,如果一开始通过 class 选择器( .myclass )选中了 4 个元素,然后这四个元素的索引值会被分配为 0 3 ,之后就可以用这种索引值选择器来进一步筛选了。

请注意,由于JavaScript数组使用 基于0的索引 ,这些选择器也是如此。这就是为什么 $('.myclass:lt(1)') 选择器选择文档中第一个 MyClass 类的元素,而不是选择不到任何元素。与此相反, :nth-child(n) 基于1的索引 的,以符合CSS规范。

jQuery 1.8以前的版本, :lt(index) 选择器不接收一个负数的 index 值。

注意

  • 因为 :lt() 是一个 jQuery 延伸出来的一个选择器,并且不是的CSS规范的一部分,使用 :lt() 查询不能充分利用原生DOM提供的 querySelectorAll() 方法来提高性能。为了在现代浏览器上获得更佳的性能,请使用 $("your-pure-css-selector").slice(0, index) 代替。

例子

查找索引值小于 4 的 td.

<!DOCTYPE html>
<html>
<head>
  <script src="./static/js/jquery-3.5.0.js"></script>
</head>
<body>
  <table border="1">
 
  <tr><td>TD #0</td><td>TD #1</td><td>TD #2</td></tr>
  <tr><td>TD #3</td><td>TD #4</td><td>TD #5</td></tr>
 
  <tr><td>TD #6</td><td>TD #7</td><td>TD #8</td></tr>
</table>
<script>$("td:lt(4)").css("color", "red");</script>
 
</body>
</html>

上篇: :gt(index)

下篇: :not(selector)