jQuery获取元素索引值index()方法

jQuery的index()方法搜索匹配的元素,并返回相应元素的索引值,从0开始计数;

如果没给.index()方法传递参数,那么返回值就是这个jQuery对象集合中第一个元素相对于同辈元素的位置;

如果参数是一组DOM元素或者jQuery对象,那么返回值就是传递的元素相对于原先集合的位置;

如果参数是一个选择器,那么返回值就是原先元素相对于选择器匹配元素中的位置,如果找不到匹配的元素,则返回-1;

eg:

<ul>

  <li id="ch">ch</li>

  <li id="ang">ang</li>

  <li id="ing">ing</li>

</ul>

$('li').index(document.getElementById('ang')) //1  传递一个DOM对象,返回这个对象在原先集合中的索引位置

$('li').index($('#ang')) // 1  传递一个jQuery对象

$('li').index($('li:gt(0)')) // 1  传递一个jQuery对象,返回这个对象中第一个元素在原先集合中的索引位置

$('#ang').index('li') // 1   传递一个选择器,返回#ang在所有li中的索引位置

$('#ang').index() // 1   不传递参数,返回这个元素在同辈中的索引位置

 

案例:

<div id="nav">

  <a href="http://www.baidu.com/">百度1</a>

  <a href="http://www.baidu.com/">百度2</a>

  <a href="http://www.baidu.com/">百度3</a>

  <a href="http://www.baidu.com/">百度4</a>

</div>

$('#nav a').click(function () {

  var index1 = $('#nav a').index(this)

  var index2 = $('#nav a').index($(this))

  var index3 = $(this).index()

  var index3 = $(this).index('a')

  alert(index3)

  return false

})

(点击网页中百度1、2、3、4依次弹出0、1、2、3)

posted @ 2018-09-07 15:46  辰辰plus  阅读(18172)  评论(0编辑  收藏  举报