获取父元素中元素的位置(索引)

时间:2012-02-09 03:23:02

标签: javascript jquery

我想在其父级中获取元素的位置。例如

<div>
<h2 class="one">A</h2>
<span>Something</span>
<h2 class="two">B</h2>
<h2 class="three">C</h2>
</div>

现在假设我得到了h2.two $('h2.two')的引用;在一个事件中。我希望这个元素的位置相对于div中的其他h2。在这种情况下,它是2.请不要告诉我,我可以通过classname获取它,因为不会有这些类名。它只是为了解释。

注意:我希望它在h2列表中的位置,基本上在$('h2.two')。parent()。children('h2')并非所有元素

function buildPath(element)
{
var Xpath,position=-1;
element=$(element);//Just in case;
Xpath=getTagName(element);
parent=element.parent();
console.log(parent.children(Xpath));

var position = element.siblings(Xpath).element.index(element);//I want the position here
Xpath="/"+Xpath+"["+position+"]";
    console.log(Xpath);
    console.log(getTagName(parent));
    if (getTagName(element)=='body')
    return Xpath;



 }

1 个答案:

答案 0 :(得分:3)

var $theH2 =  $('h2.two');

var index = $theH2.siblings("h2").andSelf().index($theH2);

这是一个有效的例子:

http://jsfiddle.net/Bm6Wd/

点击h2,它会提醒索引。