您的浏览器过于古老 & 陈旧。为了更好的访问体验, 请 升级你的浏览器
Ready 发布于2014年08月21日 03:11

原创 jQuery.index() 函数详解

5495 次浏览 读完需要≈ 6 分钟 jQueryJavaScript

内容目录

index()函数用于获取当前jQuery对象中指定DOM元素的索引值。

该函数属于jQuery对象(实例)。

语法

jQueryObject.index( [ object ] )

参数

参数 描述
object 可选/String/Element/jQuery类型表示指定元素的对象。

jQuery 1.4新增支持:可以不指定object参数、object参数可以为字符串(选择器)。

参数object可以是DOM元素、jQuery对象或字符串。如果参数object是字符串,则将其视作jQuery选择器,表示该选择器所匹配的元素。

返回值

index()方法的返回值为Number类型,返回指定元素的索引位置(从0开始算起)。

注意:以下文本描述中的当前元素表示当前jQuery对象的第一个元素。

  • 如果没有指定参数object,则返回当前元素在其所有同辈元素中的索引位置。

  • 如果object为String类型,则将其视作选择器,返回当前元素在选择器所匹配的元素中的索引位置。如果该选择器不匹配任何元素或者当前元素不在匹配到的元素内,则返回-1。

  • 如果object为DOM元素或jQuery对象,则返回该元素(或该jQuery对象中的第一个元素)在当前jQuery对象所匹配的元素中的索引位置。

示例&说明

以下面这段HTML代码为例:

<div id="n1">
	<div id="n2">
		<span id="n3"></span>
		<ul id="n4">
			<li id="n5">item1</li>
			<li id="n6">item2</li>
			<li id="n7">item3</li>
		</ul>
		<span id="n8"></span>
	</div>	
</div>

我们编写如下jQuery示例代码,来详细介绍index()函数。

// 省略参数: 返回第一个li元素在所有同辈元素中的索引
document.writeln( $("li").index( ) ); // 0
// 参数为DOM元素: 返回n6在$li中的索引
document.writeln( $("li").index( document.getElementById("n6") ) ); // 1
// 参数为jQuery对象: 返回$("#n7")在$li中的索引
document.writeln( $("li").index( $("#n7") ) ); // 2

// 参数为选择器字符串: 返回$li中的第一个元素(即n5)在选择器"#n4"所匹配的元素中的索引
// 选择器"#n4"匹配的元素只有n4一个,没有n5,因此返回-1
document.writeln( $("li").index( "#n4" ) ); // -1

// 省略参数:n4在同辈元素中的索引,n4之前的同辈元素有一个n3,因此返回索引为1
document.writeln ( $("#n4").index( ) ); // 1

// 参数为选择器字符串:n8在选择器"span"所匹配的元素中的索引
// 选择器"span"匹配n3、n8两个元素,n8是其中的第二个元素,因此返回索引为1
document.writeln ( $("#n8").index( "span" ) ); // 1

运行代码

  • CodePlayer技术交流群1
  • CodePlayer技术交流群2

0 条评论

撰写评论

打开导航菜单