搜索匹配的元素,并返回相应元素的索引值,从0开始计数。
如果不给 .index() 方法传递参数,那么返回值就是这个jQuery对象集合中第一个元素相对于其同辈元素的位置。
如果参数是一组DOM元素或者jQuery对象,那么返回值就是传递的元素相对于原先集合的位置。
如果参数是一个选择器,那么返回值就是原先元素相对于选择器匹配元素中的位置。如果找不到匹配的元素,则返回-1。 具体请参考示例。
<ul>
<li id="foo">foo</li>
<li id="bar">bar</li>
<li id="baz">baz</li>
</ul>
jQuery 代码:
$('li').index(document.getElementById('bar')); //1,传递一个DOM对象,返回这个对象在原先集合中的索引位置
$('li').index($('#bar')); //1,传递一个jQuery对象
$('li').index($('li:gt(0)')); //1,传递一组jQuery对象,返回这个对象中第一个元素在原先集合中的索引位置
$('#bar').index('li'); //1,传递一个选择器,返回#bar在所有li中的做引位置
$('#bar').index(); //1,不传递参数,返回这个元素在同辈中的索引位置。
html:
<dl class="topNavDl">
<dt><a href="#" class="selectedNav">信息查询</a></dt>
<dd></dd>
<dt><a href="#" id="yewu">业务应用</a></dt>
<dd></dd>
<dt><a href="#">数据维护</a></dt>
<dd></dd>
<dt><a href="#" id="pingtai" >平台服务</a></dt>
<dd></dd>
<dt><a href="#">运行管理</a></dt>
</dl>
jQuery:
$(".topNavDl dt a").click(function(){
alert($(".topNavDl dt a").index(this));
});
jquery怎么判断所点击元素是其父元素中的第几个子元素?
比如有如下代码 HTML code <div>
<span>内容</span>
<span>内容</span>
<span>内容</span>
<span>内容</span>
</div> 我现在想给span绑定个click事件 $("span").click(function(){})
希望一点击某个span 显示出 该span属于其父元素<div>中的第几个子元素
应该怎么写?
$("span").click(function(){
alert($(this).index()+1);
});
index()返回该元素的索引值,可表示该span属于其父元素<div>中的第几个子元素。