概述 .eq( index )
返回值:jQuery
描述:减少匹配元素的集合为指定的索引的哪一个元素。
如果一个jQuery对象表示一个DOM元素的集合,.eq()
方法从集合的一个元素中构造新的jQuery对象。所提供的索引标识这个集合中的元素的位置。
考虑一个页面上一个简单的列表:
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
</ul>
我们可以在列表项目上设置此方法:
$('li').eq(2).css('background-color', 'red');
此调用的结果是item 3的背景变成红色。请注意,提供的索引是从0开始的,代表元素在jQuery对象中的位置,而不是在DOM树中的位置。
提供一个负数表示的元素的位置从集合中的末尾开始,而不是开头。例如:
$('li').eq(-2).css('background-color', 'red');
这一次清单item 4变成了红色,因为这是从集合的末尾开始的第二个。
如果指定索引位置的元素不存在,该方法构造了一个空的新jQuery对象,length
属性值是0。
$('li').eq(5).css('background-color', 'red');
在这里,列表项都没有变成了红色。.eq(5)
表示5个项的list的第六个元素,没有啊,亲!
示例
为索引值是为 2 的 div 添加适当的 class,将其变成蓝色。
<!DOCTYPE html>
<html>
<head>
<style>
div { width:60px; height:60px; margin:10px; float:left;
border:2px solid blue; }
.blue { background:blue; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<script>
$("body").find("div").eq(2).addClass("blue");
</script>
</body>
</html>