获取我相对于jquery集合单击的元素的索引

Hua*_*ism 2 javascript jquery click

我这里有一个小提琴,非常简单.

http://jsfiddle.net/tnQne/

我有的js在这里

$('section a').on('click', function() {
    alert($(this).index());
});
Run Code Online (Sandbox Code Playgroud)

它总是返回0,因为在部分内只有1个锚标记.我想要的是它返回jquery集合中被点击元素的位置.因此,如果我点击最后一个锚点,它将返回2(基于0)

lon*_*day 8

您需要存储原始集合并调用index该集合.

var links = $('section a').on('click', function() {
    alert(links.index(this));
});
Run Code Online (Sandbox Code Playgroud)

的jsfiddle


您的代码的问题是$(this).index()将获得元素相对于其兄弟的索引.由于a元素没有任何兄弟,因此索引始终是0.我链接的API页面解释了index如果DOM元素是参数,函数如何工作.