从不同的元素组中获取索引

Get index from different element group

我有 li 的列表,其中包含 2 组数据,data-type='a'data-type='b',a/b 的顺序是随机的。当用户仅基于其中一个组单击 li 时,如何获取索引?例如,单击第 3 个 li 将 return 索引 1,下面 html。

<li>
  <div class='img' data-type='a'>
  </div>
</li>
<li>
  <div class='img' data-type='b'>
  </div>
</li>
<li>
  <div class='img' data-type='b'>
  </div>
</li>
<li>
  <div class='img' data-type='a'>
  </div>
</li>
<li>
  <div class='img' data-type='b'>
  </div>
</li>
<li>
  <div class='img' data-type='a'>
  </div>
</li>

您可以使用 .index() which returns the index of the passes item based on the set of elements on which .index() was called.(courtesy Arun P Johny)

的第 3 版

然后结合属性选择器..

$("div").click(function() {
    var dataType = $(this).data("type");
    alert($("[data-type='" + dataType + "']").index(this));
});

Fiddle