假设我有相同类的元素,但是'包装在不同的父div中。我如何找到每个.child
div的索引?
如果我要在迭代器中调用索引,我将返回0
,因为它是父div中唯一的.child
。我要做的是在#container
div的范围内找回那些div的索引。
$(function() {
$("#container .child").text(function() {
var i = $(this).index();
return "The index of this element is " + i
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="container">
<div id="one">
<div class="child"></div>
<div>
<div id="two">
<div class="child"></div>
<div>
<div id="three">
<div class="child"></div>
<div>
</div>
&#13;
答案 0 :(得分:2)
传递给.text()
方法的回调函数的第一个参数是当前集合中的索引。
$(function() {
$("#container .child").text(function(i) {
return "The index of this element is " + i
});
});
答案 1 :(得分:0)
如果你想使用index
,你可以使用选择器然后传入元素来获取集合中的索引
$("#container .child").index(this)
甚至反过来
$(this).index("#container .child")
但最简单的方法就是在text()
的回调函数中使用迭代器
$("#container .child").text(function(i) {
return "The index of this element is " + i
});