Jquery如何计算父母的索引号?

时间:2012-04-26 13:57:48

标签: jquery

我有一个这个函数来计算索引号,但是我需要从它的父父表中计算它,所以我的索引结果是0,1,2。

我该怎么做?

myfuntion://

HTML:

<div id="parent">
    <div class="child1">
        <h3>title one</h3>
    </div>
    <div class="child1">
        <h3>title one</h3>
    </div>
    <div class="child1">
        <h3>title one</h3>
    </div>
</div>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

Jquery的:

​$('h3','#parent')​​​​​​​​​.click(function(){
    alert($(this).index('#parent'))            
})​

3 个答案:

答案 0 :(得分:2)

使用

更改您的功能
var h3p = $('h3','#parent');
h3p.click(function(){
    alert(h3p.index($(this)));           
});

示例小提琴:http://jsfiddle.net/HwySz/

答案 1 :(得分:0)

来自the docs

  

如果在元素集合上调用.index()并传入DOM元素或jQuery对象,.index()将返回一个整数,指示传递的元素相对于原​​始集合的位置。

考虑到这一点,你想要这个:

var $h3s = ​$('#parent h3')​​​​​​​​​
$h3s.click(function(){
    alert($h3s.index($(this)));        
})​;

答案 2 :(得分:0)

这是一个有效的jsFiddle:http://jsfiddle.net/ZcBBY/

我已经删除了#parent的eventListener并仅在h3上绑定了它。使用$(this).parent().index()

查找包含div的索引

整个街区:

$('h3').click(function(){
    alert($(this).parent().index())            
})​