jQuery – 显示一个画廊的前三个图像; 隐藏其余部分
我有一个带有以下标记的图像列表:
show images
我可以在网页上有一堆这样的(如20或更多)。 我原本不想显示任何拇指,因此将所有.images-container-box设置为隐藏。 我希望显示前3个图像,其余部分将被隐藏。 看起来我想做的就是在初始加载时说隐藏所有.image-container-box.image-box,它们在元素的img数组中> 3。 我该怎么办?
谢谢
$(".image-container-box .image-box:gt(2)").hide();
要么:
$(".image-container-box .image-box").slice(2).hide();
演示。
这是jQuery的切片方法:
$(".images-container-box").slice(0,2).show();
$(".images-container-box").slice(3).hide();
使用slice
比gt(n)
, lt(n)
或其他位置选择器更有效,因为jQuery somewhy在evaulating gt, lt, etc..
时会循环遍历整个集合。
首先使用CSS隐藏它们(如果你还没有这样做):
.image-container-box{display:none}
然后使用jQuery和:lt()
选择器显示前三个:
$('.image-container-box:lt(3)').show();
CSS版本:
.image-box {display:none;} .image-box:first-child, .image-box:nth-child(2), .image-box:nth-child(3) {display: block;}