3

我有这个要过滤的项目列表:

<ul id="container">
    <li class="item filter">This is where I'd put my filters</li>
    <li class="item">Item 1</li>
    <li class="item">Item 2</li>
    <li class="item">Item 3</li>
</ul>

那么我想像这样执行它......

  $container.isotope({
    itemSelector : '.item'
  });

...但我想要一个像ignore: '.filter'. 这样的事情可行吗?

整个目标是将过滤器放在容器内,采用相同的样式和过渡。

4

1 回答 1

7
$container.isotope({
    itemSelector : '.item:not(.filter)'
});

只需使用:not()选择器。

编辑:

您建议将其包含在初始同位素选择中,并将其作为同位素的一个项目,但不可过滤- 至少这是我对您的理解。
因此,要实现这一点,请保留您的原件:

$container.isotope({
    itemSelector : '.item'
});

稍后,当您执行过滤器时,只需始终包含, .filter
示例:

//Assume something got clicked, which had a data-filter attribute.
var filters = $(this).data('filter');
$container.isotope({
    filter: filters +', .filter'
});
于 2012-10-23T23:32:24.997 回答