获取jQuery中可见元素的索引

时间:2019-06-02 09:56:31

标签: javascript jquery

我想获取jquery中可见元素之间的selected类索引。

<ul>
    <li>element 01</li>
    <li style="display: none">element 02</li>
    <li style="display: none">element 03</li>
    <li style="display: none">element 04</li>
    <li>element 05</li>
    <li>element 06</li>
    <li class="selected">element 07</li>
    <li style="display: none">element 08</li>
</ul>

我已经尝试过这些方法

console.log($('ul li.selected').index());
console.log($('ul li:visible.selected').index());

我想在上面的示例中使用数字3:.selectedul元素的索引忽略不可见的元素。

1 个答案:

答案 0 :(得分:6)

您可以在选择可见元素,传入选定元素(或包含该元素的jQuery对象)的结果上使用indexindex将在jQuery集(可见元素)中找到该元素的索引:

var index = $("ul li:visible").index($("ul li.selected"));

实时示例:

console.log($("ul li:visible").index($("ul li.selected")));
<ul>
    <li>element 01</li>
    <li style="display: none">element 02</li>
    <li style="display: none">element 03</li>
    <li style="display: none">element 04</li>
    <li>element 05</li>
    <li>element 06</li>
    <li class="selected">element 07</li>
    <li style="display: none">element 08</li>
</ul>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

相关问题