jquery - 获取不同容器内相同元素类的jquery索引

标签 jquery indexing

在事件“单击”时,我想获取可以位于多个容器中的元素的索引。返回的索引位置应该相对于其容器而不是主体标记来计算。

我在这里写了一个例子:http://jsfiddle.net/zUGcK/

我的问题是,当我单击第二个 block 容器中的行时,返回的行索引为:3、4、5,而我希望返回 0、1、2。

我应该在 jquery index() 参数中更改什么,才能为两个容器中的每一行返回 0、1、2?

谢谢

http://jsfiddle.net/zUGcK/

$('.line').click(function()
{
    alert('index: '+$(this).index('.container .line'));
});

<div class="container">
<div class="header">block #1</div>
<div class="line">line #0</div>
<div class="line">line #1</div>
<div class="line">line #2</div>
</div>

<div class="container">
<div class="header">block #2</div>
<div class="line">line #0 (index 3 returned instead of 0)</div>
<div class="line">line #1 (index 4 returned instead of 1)</div>
<div class="line">line #2 (index 5 returned instead of 2)</div>
</div>

最佳答案

您可以使用它来获取其容器内元素的索引值

$(function()
{
    $('.line').click(function()
    {
        //alert('index: '+$(this).index('.container .line'));

        alert($(this).closest('.container').find('.line').index(this));
    });
});

您必须使用 $.index 的语法

.index( element )
element The DOM element or first element within the jQuery object to look for.
​

Working Fiddle

关于jquery - 获取不同容器内相同元素类的jquery索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10872947/

相关文章:

sql - 带日期时间的 WHERE 子句的索引等

algorithm - 带快速插入的矩形的空间索引

mysql - 在 mysql 数据库中为连接建立索引

javascript - 动态jquery ui可排序 block 的索引/位置?

jquery - 使用 jQuery 重新创建 Stackoverflow 的问题文本字段行为

jquery - 如何在cakePHP中使用jquery

javascript - 以编程方式选择另一个 contenteditable div 上的部分内容

elasticsearch - Elastiscsearch索引作为Logstash中的文件名-引用问题

javascript - 单击标记谷歌地图时如何使用 Bootstrap 创建上下文菜单?

javascript - 未捕获的 TypeError : elem. nodeName.toLowerCase 不是函数 Jquery