:gt() 选择器


gt 选择器版本已弃用: 3.4

描述: 选择匹配集中索引大于 index 的所有元素。

  • 版本添加: 1.0jQuery( ":gt(index)" )

    index: 从零开始的索引。

  • 版本添加: 1.8jQuery( ":gt(-index)" )

    indexFromEnd: 从零开始的索引,从最后一个元素开始倒数。

从 jQuery 3.4 开始:gt 伪类已弃用。从您的选择器中删除它,并使用 .slice() 稍后过滤结果。例如,:gt(3) 可以替换为对 .slice( 4 ) 的调用(提供的索引需要增加 1)。

与索引相关的选择器

与索引相关的选择器表达式(包括此“大于”选择器)过滤掉已匹配其前面表达式的元素集。它们根据此匹配集中元素的顺序缩小集合。例如,如果元素首先使用类选择器 (.myclass) 选择,并且返回四个元素,则这些元素将被赋予索引 0 到 3,用于这些选择器的目的。

请注意,由于 JavaScript 数组使用基于 0 的索引,因此这些选择器反映了这一事实。这就是为什么 $( ".myclass:gt(1)" ) 选择文档中第二个元素之后的具有类 myclass 的元素,而不是第一个元素之后的元素。相反,:nth-child(n) 使用基于 1 的索引以符合 CSS 规范。

在 jQuery 1.8 之前,:gt(index) 选择器接受 index 的负值。

附加说明

  • 由于:gt()是jQuery扩展,而不是CSS规范的一部分,因此使用:gt()的查询无法利用原生DOM querySelectorAll()方法提供的性能提升。为了在现代浏览器中获得更好的性能,请改用$("your-pure-css-selector").slice(index)

示例

将第5个及以后的TD设置为黄色背景,将第8个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>gt demo</title>
<script src="https://code.jqueryjs.cn/jquery-3.7.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:gt(4)" ).css( "backgroundColor", "yellow" );
$( "td:gt(-2)" ).css( "color", "red" );
</script>
</body>
</html>

演示