下标过滤,指的是根据元素集合的下标来过滤。在 jQuery 中,我们可以使用 eq() 方法来实现下标过滤。
图 1:eq() 方法的效果
语法:
$().eq(n)
n 是一个整数。当 n 取值为 0 或正整数时,eq(0) 获取的是第 1 个元素,eq(1) 获取的是第 2 个元素,……,以此类推。当 n 取值为负整数时,eq(-1) 获取的是倒数第 1 个元素,eq(-2) 获取的是倒数第 2 个元素,……,以此类推。
举例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script src="js/jquery-1.12.4.min.js"></script> <script> $(function () { $("li").eq(3).css("color", "red"); }) </script> </head> <body> <ul> <li>HTML</li> <li>CSS</li> <li>JavaScript</li> <li>jQuery</li> <li>Vue.js</li> </ul> </body> </html>
预览效果如图 1 所示。
图 1:eq() 方法的效果
eq() 方法的下标是从 0 开始的,第 1 个 li 元素的下标是 0,第 2 个 li 元素的下标是 1,……,第 n 个元素的下标是 n-1。因此,$("li").eq(3)
表示选取第 4 个 li 元素。
$("li").eq(3).css("color", "red");
实际上,eq() 方法和 :eq() 选择器是非常相似的,上面这段代码可以等价于:
$("li:eq(3)").css("color", "red");
小伙伴们就会问了:“明明都有一个 :eq() 选择器了,为什么还要弄一个 eq() 方法出来呢?”实际上,选择器的形式是固定的,在某些情况下使用效果会不佳,而过滤方法可以让我们更加灵活地操作元素。换一句话来说:过滤方法其实就是对选择器的一种补充。对于过滤方法的优势,我们在实践的时候会慢慢见识到。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/23876.html