计算$(this)之前的类实例

时间:2019-02-04 19:27:28

标签: jquery

我有一个列表,显示的类为delImg的div。

如何在单击一个类之前获取同一类的实例数?

我尝试过的代码是...

$("#slidingtabs").on('click', '.delImg',function(){
    var prevDels = $(this).prevAll('.delImg').length;
});

它不起作用,它只返回0

1 个答案:

答案 0 :(得分:1)

nextAll() / prevAll()仅适用于兄弟姐妹,因此,如果您获得0,可以安全地假设您要查找的元素没有直接关系。

这样,您可以将index()与全局选择器一起使用,以找到集合中的当前元素。试试这个:

$("#slidingtabs").on('click', '.delImg', function() {
  var prevDels = $(this).index('.delImg');
  console.log(prevDels);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="slidingtabs">
  <p>
    <span class="delImg">Click me</span>
  </p>
  <p>
    <span class="delImg">Click me</span>
  </p>
  <p>
    <span class="delImg">Click me</span>
  </p>
  <p>
    <span class="delImg">Click me</span>
  </p>
  <p>
    <span class="delImg">Click me</span>
  </p>
</div>