查找实时函数中元素的索引

bjo*_*k24 5 jquery

我正在使用live()单击函数创建新的<li>元素,但jquery不会告诉我新创建的元素的索引.这是代码:

    $esl = $('.dynamicLink');
    $esl.live('click',function(){
        var dynamicIndex = $esl.index(this);
        alert(dynamicIndex);
    });
Run Code Online (Sandbox Code Playgroud)

每当我单击dynamicLink时,它都会返回"-1"作为索引.有什么建议?

Joe*_*oel 7

因为live使用事件委托将事件"绑定"到未来的元素,所以需要调用index最新的元素列表.试试这个:

$esl = $('.dynamicLink');
$esl.live('click',function(){
    var dynamicIndex = $('.dynamicLink').index(this);
    alert(dynamicIndex);
});
Run Code Online (Sandbox Code Playgroud)