使用jQuery中的index()获取元素的索引

时间:2016-12-15 20:39:44

标签: jquery



$(document).ready( function() {
  var box = $('.box');
  box.click( function() {
    console.log($(this).index());
  });
});

div, section {
  border: 1px solid red;
  width: 80px;
  height: 80px;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="box">1</div>
<div class="box">2</div>
<div class="para">3</div>
<div class="box">4</div>
&#13;
&#13;
&#13;

在上面的HTML中,类.box的最后一个div是第3个.box,我希望最后.box的索引为3,但我得到了4。我应该使用哪个jQuery函数来搜索所有具有类box的div,然后在单击.box时返回集合中.box的位置?

1 个答案:

答案 0 :(得分:3)

.index()$('.box').index($(this))

的元素进行比较时,可以使用.index()
  

如果选择器字符串作为参数传递,则.index()返回一个   整数,指示jQuery中第一个元素的位置   相对于选择器匹配的元素的对象。

BTW,$(document).ready(function() { var box = $('.box'); box.click(function() { console.log($('.box').index($(this))); }); });从零开始,因此索引将为0,1和2.如果你想要1,2和3,只需在结果中加1。

&#13;
&#13;
div,
section {
  border: 1px solid red;
  width: 80px;
  height: 80px;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="box">1</div>
<div class="box">2</div>
<div class="para">3</div>
<div class="box">4</div>
&#13;
.htaccess
&#13;
&#13;
&#13;