jQuery类子代未按计划访问



我正在构建一个照片库,需要对#wrapperdiv视图中的第一张照片应用一些CSS

$('.inside:first-of-type>div:nth-of-type(1)').css('display', 'none');
$('.inside:first-of-type>div:nth-of-type(2)').css('display', 'block');

#wrapperdiv视图中的所有元素都被分配了class.inder(一旦它们滑出#wrappe,这个类就会被删除)。每张照片都有两个div层。在这种情况下,我想隐藏第一层并删除第二层。我认为上面的代码会起作用,它确实起作用,但前提是该系列的第一张照片在视野中,否则它什么都不做。

我的CSS错了吗?

首先,在jQuery中没有这样的选择器:first-of-type,在大多数浏览器中也是如此。

这就是您所需要的:

var items = $('#wrapper .inside > div');
items.eq(0).css('display', 'none');
items.eq(1).css('display', 'block');

注:

  • 您最好缓存选择器结果,并避免第二个DOM查询
  • 您可以在第一个div上使用hide函数:items.eq(0).hide();
  • I want to hide the 1st and remove the 2nd layer.
    .css('display', 'block');不会删除任何内容!您可能想要使用remove函数:items.eq(1).remove();

最新更新