我需要能够动态确定另一个 div 中某个 div 的索引是什么。例如:
<div id="parent">
<div id="div-0"></div>
<div id="div-5"></div>
<div id="div-1"></div>
<div id="div-2"></div>
<div id="div-3"></div>
<div id="div-4"></div>
</div>
对于其中任何一个,我需要能够知道给定的 div 是否是第一个、第二个等等......
编辑: 好吧,显然我还没有解释清楚。我尝试了以下所有方法,每次都得到 0。我编辑了上面的示例以反射(reflect)正在发生的情况。因此,鉴于更新的示例,我需要执行以下操作:
var index = $('#div-4').index();
目前每次仅返回 0。
最佳答案
playground
$('#parent div').on('click',function(){
var elIndex = $(this).index();
$(this).text('my index is: '+ elIndex);
});
很高兴知道在 jQuery v 低于 1.3.3 .index()
中将不起作用,
在这种情况下,您可以使用 .prevAll()
和 length
:
var elIndex = $(this).prevAll().length;
如果您作为子级有多个类名,例如在 DIV 中你有:
<div id="parent">
<div class="aa"></div>
<div class="bb"></div>
<div class="aa"></div>
<div class="bb"></div>
</div>
...然后单击“.aa”元素,您想要获取它的“索引”,而不是像这样:
$('#parent .aa').click(function(){
var elIndex = $(this).prevAll('.aa');
$(this).text('my index type of class name is: '+ elIndex);
});
关于jquery - 更新: Getting the index of a child div using jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9547343/