$('li[data-number=4]').after().hide();

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
    <li data-number="0">1</li>
    <li data-number="1">2</li>
    <li data-number="2">3</li>
    <li data-number="3">4</li>
    <li data-number="4">5</li>
    <li data-number="5">6</li>
    <li data-number="6">7</li>
    <li data-number="7">8</li>
</ul>





我想隐藏数据编号4之后的所有元素,并想要获取第一个隐藏的li编号。输出将为5.如何实现此目标?请帮我。

最佳答案

.after()表示:在匹配的元素集中的每个元素之后,插入由参数指定的内容。 API

相反,您想要的是.nextAll():获取匹配元素集中每个元素的所有后续同级元素,可以选择使用选择器进行过滤。 API

因此,您的代码变为:

$('li[data-number=4]').nextAll().hide();


要隐藏第一个,请使用$('li:hidden').first():hidden.first()的文档:http://api.jquery.com/hide/https://api.jquery.com/first/

07-24 09:46
查看更多