:lt() 选择器

lt selector

描述:在匹配的元素内部,选择索引小于index的所有元素。

  • 增补版本:1.0jQuery( ":lt(index)" )

    index: 基于零的索引。

  • 增补版本:1.8jQuery( ":lt(-index)" )

    indexFromEnd: 基于零的索引,从最后一个元素开始回头计数。

索引相关的选择器

索引相关的选择器(包括此“小于”选择器)筛选了已经匹配它们前面的表达式的元素的集合。它们在此匹配集合内部,根据元素的顺序收窄了集合。例如,如果先用一个类选择器(.myclass)选择元素,返回四个元素,这些元素给定从0到3的索引,针对这些选择器的目的。

请注意,因为JavaScript数组使用基于0的索引,这些选择器返回了真实。这是为什么$( ".myclass:lt(1)" )选择带有类myclass的第一个元素,而不是不选择元素。相较之下,:nth-child(n)使用基于1的索引,以下CSS规范文档实现一致。

在jQuery 1.8以前的版本中,:lt(index)选择器的index并不接受负值。

补充说明:

  • 因为:lt()是一个jQuery扩展,不是CSS规范文档的一部分,所以使用:lt()查询,不能利用原生DOMquerySelectorAll()方法提供的性能提升。欲在现代浏览器中取得最佳性能,请用$("your-pure-css-selector").slice(0, index)来代替它。

示例:

给第4个TD以前的TD一个黄色背景,给倒数第2个TD以前的TD一个红色字体。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>lt demo</title>
<script src="https://code.jquery.com/jquery-1.10.2.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( "backgroundColor", "yellow" );
$( "td:lt(-2)" ).css( "color", "red" );
</script>
</body>
</html>

演示: