0

看这里的例子 - http://jsfiddle.net/uqYeQ/3/

第一行的行为符合预期,返回其父级中 div 的索引。

我希望第二行的行为方式相同,我希望它返回 0 到 4 之间,具体取决于单击了哪个 div。我想知道已单击的 div 与其父列表项相关的索引。

我根本无法更改 html。

4

3 回答 3

5

试一试(小提琴

$("li > .myclass, li > .container").click(function(e){
    $("#result").html($(this).index());            
});

​</p>

于 2012-04-27T13:38:57.777 回答
1

这对我有用(小提琴

$('.myclass').click(function(){
   var theIndex = $(this).index();
   $('#result').html(theIndex);
})

$('.container').click(function(){
    var theIndex = $(this).index();
    $('#result').html(theIndex);
})

但反理智更性感。

于 2012-04-27T14:46:13.907 回答
0

以下是一种方法

$('.myclass').click(function() {
    var liElem = $(this).parents('li')[0]; // get li element who is a parent of the clicked element
    var elems = $(this).parents();
    elems.push($(this)); //array contains all parents of the clicked element and the clicked element
    $(elems).each(function(key, elem) {
        if ($(elem).parent()[0] == $(liElem)[0]) {
            $('#result').html($(elem).index());
        }
    });
})

jsFiddle

于 2012-04-27T14:30:29.893 回答