我需要能够动态地确定某个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。我已经编辑了上面的例子,以反映正在发生的事情。因此,根据更新后的示例,我需要执行以下操作:
var index = $('#div-4').index();目前,它每次都只返回0。
发布于 2012-03-03 23:47:41
$('#parent div').on('click',function(){
var elIndex = $(this).index();
$(this).text('my index is: '+ elIndex);
});http://api.jquery.com/index/
很高兴知道,在1.3.3 .index()版本以下的jQuery中将无法工作,
在这种情况下,您可以使用.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);
});发布于 2012-03-03 23:47:09
正如我不是,我在评论中写道:
索引()
返回值
如果没有参数传递给.index()方法,则返回值是一个整数,指示jQuery对象中第一个元素相对于其同级元素的位置。
发布于 2012-03-03 23:50:16
您可以使用index作为@amnotiam所说的(最佳方式)。你可以使用它进行操作,甚至可以使用其中的一个:
First、nth-child、closest或eq。
https://stackoverflow.com/questions/9547343
复制相似问题