:gt() 選擇器


gt 選擇器版本已棄用:3.4

說明:選取匹配集合中索引大於 index 的所有元素。

  • 版本已新增:1.0jQuery( ":gt(index)" )

    index:從 0 開始的索引。

  • 版本已新增:1.8jQuery( ":gt(-index)" )

    indexFromEnd:從 0 開始的索引,從最後一個元素開始倒數。

自 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.jquery.com/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>

示範