获取'this'选择器索引

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取'this'选择器索引相关的知识,希望对你有一定的参考价值。

我有以下代码,我需要检测我的点击元素索引:

$('#id1, #id2, #id3').click(function(){ console.log( magicIndex(); ) });

当我单击<div id="id1">click</div> div时,我需要将0作为输出,因为此选择器项索引为0。

当我点击<div id="id2">click</div>时,我必须得到1作为输出。

答案

您只需要使用jQuery函数index()。如果html结构正确,这将返回元素的位置。我刚刚为你创建了一个jsfiddle:

https://jsfiddle.net/zLs4fo0f/6/

HTML:

<div>
  <div id="id1">
    aaaaaa
  </div>
  <div id="id3">
    bbbbbb
  </div>
  <div id="id2">
    cccccc
  </div>
</div>

<div id="result" style="color: red;">

</div>

jQuery的:

$('#id1, #id2, #id3').on('click', function() {
    $('#result').text('Index: ' + $(this).index());
});
另一答案

希望这可以帮助。在这里,我从div'id'得到索引。

function magicIndex(node){
  return node.attr('id').replace('id','')-1;
}

$('#id1, #id2, #id3').click(function(){ console.log( magicIndex($(this)) ); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="id1">Hi</div>
<div id="id2">Hello</div>
<div id="id3">Bye</div>

以上是关于获取'this'选择器索引的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段6——CSS选择器

VSCode自定义代码片段——CSS选择器

jQuery选择器中,通配符[id^='code']input[id$='code'][id*='code']

jQuery选择器中,通配符[id^='code']input[id$='code'][id*='code']

jQuery筛选选择器

jquery 怎么获取当前点击class 是第几个