jquery获取当前元素索引值index()方法(总结)

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

如果不给 .index() 方法传递参数,那么返回值就是这个jQuery对象集合中第一个元素相对于其同辈元素的位置。
如果参数是一组DOM元素或者jQuery对象,那么返回值就是传递的元素相对于原先集合的位置。
如果参数是一个选择器,那么返回值就是原先元素相对于选择器匹配元素中的位置。如果找不到匹配的元素,则返回-1。

1 <ul>
2   <li id="foo">foo</li>
3   <li id="bar">bar</li>
4   <li id="baz">baz</li>
5 </ul>


1 $(‘li‘).index(document.getElementById(‘bar‘)); //1,传递一个DOM对象id为bar,返回这个对象在原先集合中的索引位置
2 $(‘li‘).index($(‘#bar‘)); //1,传递一个jQuery对象
3 $(‘li‘).index($(‘li:eq(0)‘)); //1,传递一组jQuery对象,返回这个对象中第一个元素在原先集合中的索引位置
4 $(‘#bar‘).index(‘li‘); //1,传递一个选择器,返回#bar在所有li中的索引位置
5 $(‘#bar‘).index(); //1,不传递参数,返回这个元素在同辈中的索引位置。  

jquery获取元素索引值index()示例

1 <div id="nav">
2     <a href="http://www.51xuediannao.com/">建站素材</a>
3     <a href="http://www.51xuediannao.com/">jquery特效</a>
4     <a href="http://www.51xuediannao.com/">懒人主机</a>
5     <a href="http://www.51xuediannao.com/qd63/">前端路上</a>
6 </div>
1 $("#nav a").click(function(){
2     var index1 = $("#nav a").index(this);
3     var index2 = $("#nav a").index($(this));
4     var index3 = $(this).index()
5     var index3 = $(this).index("a")
6     alert(index3);
7     return false;
8 });

上面是介绍的知识,然后自己实际运用中经常会出现

$(this).index() 返回值为一直为-1的情况。

$(this).index() 返回值为一直为-1,导致图片无法正常滚动,说明找不到匹配的元素。

比如下面的例子。

想要知道<ul>下的一堆<li>中,自己点击的<li>的索引值是什么,原文如下:

1 1 $("li").hover(function(){
2 2 alert($("li").index(this));
3 3 }); 

  使用起来很简单,我的代码是

1 1 $("#mainleft .menu li").click(function(){
2 2          $("#mainleft .menu li.current").removeClass("current");
3 3          $(this).addClass("current");
4 4          var index = $("#mainleft .menu li").index(this);
5 5          alert(index);
6 6     });

下一个引用:

如果 列表里面 有N多的列表项目 我想知道我点击了哪一个 应该怎么取呢?
jQuery 里面 提供了一个 index() 方法 :index(subject)

搜索与参数表示的对象匹配的元素,并返回相应元素的索引值值。

如果找到了匹配的元素,从0开始返回;如果没有找到匹配的元素,返回-1。

但是 API里面提供的例子貌似不对

1 <ul>
2     <li><a href="#nogo">这里是一个序列</a></li>
3     <li><a href="#nogo">这里是一个序列</a></li>
4     <li><a href="#nogo">这里是一个序列</a></li>
5     <li><a href="#nogo">这里是一个序列</a></li>
6     <li><a href="#nogo">这里是一个序列</a></li>
7     <li><a href="#nogo">这里是一个序列</a></li>
8 </ul> 

如上所示,这是一个无序列表 我要点击任意一个列表项目 要求得到该项目的序列 该怎么样呢?

1 $(document).ready(function(){
2 $("#act li").click(function(){
3    alert( $( "#act li" ).index( $(this)[0] ) );
4    })
5 }) 

也可以写成

alert($(‘#act li‘).index(this)[0]);或者 alert($(‘#act li‘).index(this));

$( "#act li" ).index( $(this)[0] )    [0]灰常重要哦~

时间: 2024-11-09 13:44:51

jquery获取当前元素索引值index()方法(总结)的相关文章

jquery获取元素索引值index()

jquery获取元素索引值index()方法实例. jquery获取元素索引值index()方法: jquery的index()方法 搜索匹配的元素,并返回相应元素的索引值,从0开始计数. 如果不给 .index() 方法传递参数,那么返回值就是这个jQuery对象集合中第一个元素相对于其同辈元素的位置. 如果参数是一组DOM元素或者jQuery对象,那么返回值就是传递的元素相对于原先集合的位置. 如果参数是一个选择器,那么返回值就是原先元素相对于选择器匹配元素中的位置.如果找不到匹配的元素,则

jQuery -&gt; 获取后代元素的三种方法

如果我们有内容如下的html文件,那么如何选取包含在<p>元素内的<i>元素呢? 邪馬台国の謎と弥生時代 紀元前1000年ごろ.水稲工作の技術をもつ集団が大挙して日本に移住してきた.これによって弥生時代が始まった. 縄文人も南方から伝わった稲を栽培していたが.彼らは原野を開いて大掛かりな水田をつくる発想を持たなかった.しかし.北九州に新たな文化を持って集団が来たのを知った彼らは次第に.水稲工作を受け入れ弥生人へとか分かっていた. html源码如下 <h1>邪馬台国の謎と

jQuery 获取兄弟元素的几种方法

jQuery 获取兄弟元素的几种方法. 获取指定元素的兄弟元素时,可以使用adjacent sibling combinator (+),其中+的两侧内容都是selector expression. 如果要获取下例中所有的 h1的直接兄弟元素h2 <div> <h1>Main title</h1> <h2>Section title</h2> <p>Some content...</p> <h2>Section

js/jquery获取文本框的值与改变文本框的值

我们就用它来学习获取文本框的值及改变文本框的值. 代码如下 复制代码 <script>function get1(){ document.getElementById("txtbox2").value=document.getElementById("txtbox").value; //获取文本框1的值,并赋值给文本框2}</script> <table width="500" border="0"

Knockout获取数组元素索引的2种方法,在MVC中实现

在遍历数组.集合的时候,通常要获取元素的索引,本篇体验使用Knockout获取索引的2种方法. 假设有这样的一个模型: namespace UseIndex.Models { public class Student { public int Id { get; set; } public string Name { get; set; } } } 在HomeController中,先模拟一个Student的集合,在投影出Name属性的集合,最后以Json返回给前台视图. using Syste

使用jquery获取父元素或父节点的方法

jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解: <ul class="parent1"> <li><a href="#" id="item1">jquery获取父节点</a></li> <li><a href="#">jquery获取父元素&l

jquery获取父元素或父节点的方法

jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解: 先举个例子, <ul class="parent1"> <li><a href="#" id="item1">jquery获取父节点</a></li> <li><a href="#">jquery

jquery 获取下拉框值与select text

下面先介绍了很多jquery获取select属性的方法,同时后面的实例我们讲的是jquery 获取下拉框值与select text代码. 下面先介绍了很多jquery获取select属性的方法,同时后面的实例我们讲的是jquery 获取下拉框值与select text代码. jquery获取select选择的文本与值 获取select : 获取select 选中的 text : $("#ddlregtype").find("option:selected").tex

js获取隐藏元素宽高的方法

网上有一些js获取隐藏元素宽高的方法,但是可能会存在某些情况获取不了. 例如: <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <title>test</title> </head> <bo