问题:在给ul li中的元素渲染时,有些li是display:none,需要跳过这些隐藏的元素。一开始我是使用css中的 :nth-child(n),但这个n值它不会跳过隐藏的li。
方法:经过尝试发现使用纯CSS无法实现跳过隐藏的元素。摸索得知可使用jquery中的eq方法,具体方法如下:
HTML
<ul>
<li style="display:none">1</li>
<li class="liBg">2</li>
<li style="display:none">3</li>
<li class="liBg">4</li>
<li style="display:none">5</li>
<li class="liBg">6</li>
</ul>
Javascript
<script>
$(document).ready(function(){
$("ul li[class=liBg]:eq(1)").css("background-color","yellow");
});
</script>
效果如下:

这样就成功跳过隐藏的元素了。
本文介绍了一种在渲染列表时跳过隐藏元素的方法。通过使用jQuery的eq方法,可以有效地忽略样式为display:none的li元素,确保背景色只应用于可见的li元素。
9947

被折叠的 条评论
为什么被折叠?



