如何使用JQuery index()方法

时间:2014-11-20 21:58:15

标签: jquery

我对JQuery的index()方法缺少什么。根据文档,我希望在此处提醒1的值:

HTML

<div class="test" id="div1"></div>
<div class="test" id="div2"></div>

JS

$(document).ready(function(){
    var index = $('.test').index('#div2');
    alert(index);
});

这是一个小提琴:http://jsfiddle.net/cpody1cb/

为什么我会收到-1的提醒?如果我改为使用index('#div1'),我会收到警告0,正如我所料。

3 个答案:

答案 0 :(得分:2)

你太努力了。

var index = $('#div2').index();

要解释为什么你的工作不起作用,你只需向后选择器。 index()方法的参数应该是一个选择器,它获取元素集,而不是您想要索引的元素。这将是这样做的:

var index = $('#div2').index('.test');

答案 1 :(得分:0)

由于索引从零开始,您应该获得1

&#13;
&#13;
$(document).ready(function(){
    var index = $('.test').index( $('#div2') );
    alert(index);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="test" id="div1"></div>
<div class="test" id="div2"></div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

.index()只能处理一个元素,所以它首先将所选元素集合减少到第一个元素,这解释了当你使用0和{#div1时获得-1的原因。使用#div2时{1}}。你应该选择你想要索引的div,然后给它一个选择器来告诉它在哪里寻找元素。

$('#div2').index('.test')