隐藏一定数量的列表对象
Hide a set number of list objects
我在一个页面上有多个具有相同结构的列表对象:示例:
<div class="mainWrapper">
<div class="listWrapper">
<ul>
<li>Object One</li>
<li>Object Two</li>
<li>Object Three</li>
<li>Object four</li>
<li>Object five</li>
</ul>
</div>
<div class="listWrapper">
<ul>
<li>Object One</li>
<li>Object Two</li>
<li>Object Three</li>
<li>Object four</li>
<li>Object five</li>
</ul>
</div>
</div>
使用jQuery,我如何设置它,使每个列表中只有前3个对象显示在每个列表中,其余的都被隐藏?
您可以使用:gt()
伪选择器来选择匹配集中索引大于索引的所有元素。
$('.listWrapper').find('li:gt(2)').hide();
演示
尝试:gt()
(大于)选择器:
$('.listWrapper ul').find('li:gt(2)').hide();
- jsFiddle
有必要使用额外的find()
在两次传递中查询目标li
。否则,如果存在多个ul
,则所有li
都将被视为单个集合,并且总共只显示3个列表项通过这种方式,我们hide()
选择了与列表一样多的项目
注意:您希望您的初始查询能够进入列表本身。
请参阅:gt()
选择器文档。
http://jsfiddle.net/GEbxG/
$('div.listWrapper li').each(function(i, elem) {
if($(elem).index() < 3) return;
$(elem).hide();
});
$('.listWrapper li').show().slice(3).hide();
http://api.jquery.com/slice/
如果所有元素最初都可见,则可以删除.show()
。
如果您还没有包含所有li
元素的jQuery对象和/或不需要访问完整的元素列表,您可以避免在第一位选择它们:
$('.listWrapper ul li:gt(2)').hide();
相关文章:
- 如何使用json将对象列表从java转换为javascript
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- 当属性不一致时,如何根据属性对JS对象列表进行排序
- 如何使用Javascript客户端对象模型检索Sharepoint 2010列表项权限
- 用javascript从列表对象(JSON的)构建diffrent选项卡
- 如何更改列表.js列表对象中的选项
- 如何使用变量值将列表<对象>序列化为 JSON
- 将列表对象从javascript转换为JSON
- 将对象推入对象列表对象
- 如何从列表对象生成li和锚点标记
- AngularJS-通过dons't在ng模型中设置列表对象
- 隐藏一定数量的列表对象
- 要切换的Javascript类列表对象和查询选择器
- 从动态列表对象中获取对象
- jPlayer不播放播放列表对象的全局声明中的歌曲
- Spring MVC @ResponseBody, JSON, JSP.试图返回列表<对象>从控制器到JSP
- Javascript列表对象可以'不添加JSON?node . js,重火力点
- javascript从文件列表创建文件列表对象
- 流星 - 在列表对象中呈现所有者的名称
- UndefinedError:列表对象没有未定义元素