javascript - 在 jquery 中单击按钮获取父级(仅属于特定类)的索引

标签 javascript jquery html

我有一个无序列表,其中包含一组具有不同类名的列表元素。

当我点击下面脚本中的播放按钮时,我想获取它的父级 (li) 的索引。

但是,.index() 方法给出了 ulli 的索引。我需要索引作为一个特定的类。例如,我有 2 个“播放”按钮。如果我点击第二个“播放”按钮,我需要打印索引 1 ,而不是列表中的实际索引。

$('.audio_btn').unbind('click');
$('.audio_btn').bind('click', function(event){
    alert($(this).parents('.audio').index());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="myList">
    <li class="text">My Text</li>
    <li class="audio"><input type="button" class="audio_btn" value="play"></li>
    <li class="video">My Video</li>
    <li class="text">My Text</li>
    <li class="text">My Text</li>
    <li class="text">My Text</li>
    <li class="audio"><input type="button" class="audio_btn" value="play"></li>
    <li class="text">My Text</li>
    <li class="text">My Text</li>
</ul>

最佳答案

使用$('.audio')集合作为待定索引的来源

$('.audio_btn').unbind('click');
$('.audio_btn').bind('click', function(event) {
  console.log($('.audio').index($(this).parents('.audio')));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="myList">
  <li class="text">My Text</li>
  <li class="audio">
    <input type="button" class="audio_btn" value="play">
  </li>
  <li class="video">My Video</li>
  <li class="text">My Text</li>
  <li class="text">My Text</li>
  <li class="text">My Text</li>
  <li class="audio">
    <input type="button" class="audio_btn" value="play">
  </li>
  <li class="text">My Text</li>
  <li class="text">My Text</li>
</ul>

关于javascript - 在 jquery 中单击按钮获取父级(仅属于特定类)的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31292822/

相关文章:

html - 自定义字体无法在 Windows (Chrome) 上正确显示

javascript - html - 悬停时播放 gif 一次,鼠标移开时反向播放

javascript - 反转高图图例值或颜色或从其他属性而不是系列值绘制图例颜色

javascript - ChartJS、Primeng、Gap First 和 End of Line Chart

php - 在哈希中保存信息的最佳方法

javascript - 如何使用 jQuery 或 Javascript 禁用页面上的元素

javascript - 为什么是 $ ('[tabindex="1"]' ).focus();关注 tabindex ="2"?

javascript - Internet Explorer 复古兼容性

javascript - 从 React bootstrap 中的另一个组件打开模式

javascript - 如何使 "ActiveXObject(' SAPI.SpVoice')"在 Firefox 中工作