javascript - jquery 按类索引

标签 javascript jquery

我想知道 li 元素的索引,它具有特定的类。

<ul>
    <li style="display: none;">don't need this one</li>
    <li class="li">sdsds</li>
    <li class="li">sdsds</li>
    <li class="li">sdsds</li>
</ul>

$('ul').each(function () {
    $(this).on('click', 'li.li', function () {
        alert($(this).index());
    });
});

http://jsfiddle.net/oobkzyat/2/

我的问题是索引不是从 0 开始。 我该怎么做?

最佳答案

任一元素显示或不显示。它将成为索引的一部分,这就是它为您提供 1 而不是 0 的原因,因为 0 是您隐藏的元素的索引 ( <li style="display: none;">don't need this one</li> ) 。不过,下面是满足您要求的代码。

$('ul').each(function () {
    $(this).on('click', 'li.li', function () {
      alert($(this).index()-$(this).prevAll(":hidden").length);
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<ul>
    <li style="display: none;">don't need this one</li>
    <li class="li">sdsds</li>
    <li class="li">sdsds</li>
    <li class="li">sdsds</li>
</ul>

关于javascript - jquery 按类索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30987882/

相关文章:

javascript - 滚动功能在本地禁用,但仍可在现场使用

jQuery 将选择器作为变量引用

javascript - 谷歌地图与 Cordova /phonegap中的图像叠加

javascript - 如何在不修改整个内容的情况下更新innerHTML?

javascript - 使用 javascript 选择不同组中的所有单选按钮

javascript - nuxt-links 导航到带有哈希/ anchor 的页面的问题

javascript - 为什么在 jQuery 脚本中使用 *//&lt;![CDATA[* and *//]]>*?

javascript - 如何使用 javascript 或 jquery 获取新表单输入的更新 json 文件?

javascript - 按键事件在 ionic 框架中不起作用

javascript - 我无法使用 jquery 获取几个 div 内的 select html 的值