0

我正在使用 Isotope 在页面上显示产品。我希望用户能够对项目进行排序(没问题)和过滤项目。简单的过滤(即".Brand1,.Brand2,.Color1"返回带有 Brand1 的所有产品和带有 Brand2 的所有产品以及带有 Color1 的所有产品)工作正常。

但我需要实现的是高级过滤器,即(Brand1 or Brand2) AND Color1. 我的主要问题是我可以拥有数十种品牌和数十种颜色以及数十种其他可能的过滤器类别,因此遍历所有这些以创建类似的过滤器".Brand1.Color1, Brand2.Color1"可能需要很多时间。

你知道有什么方法可以像(Brand1 or Brand2) AND Color1Isotope 那样创建条件过滤器吗?

4

2 回答 2

1
$(".foo, .bar").somemethod(someargument);

匹配具有类 foo 或类 bar 的元素,

$(".foo.bar").somemethod(someargument);

匹配具有类 foo 和类 bar 的元素,

$(".foo, .bar").not(selector)

可能是要走的路。

于 2012-07-26T12:50:20.103 回答
0

Isotope 将 jQuery 对象作为过滤器。所以如果你想应用这个条件(Brand1 or Brand2) AND Color1,首先过滤你的元素:

var $elements = $('.element').filter('.Brand1, .Brand2').filter('.Color1');

并将其传递给 isotope 以更新视图:

$grid.isotope({ filter: $elements });

你就完成了:)

于 2015-10-23T14:17:47.347 回答