【发布时间】:2014-05-06 12:14:18
【问题描述】:
我正在使用 metafizzy 同位素来过滤物品。
我有 2 个过滤器行: category1(电缆、工具、stuff1、stuff2)和 类别 2(电缆 1、电缆 2、工具 1、工具 2)。
如果合并两个类别时没有结果,是否可以停用过滤器(使用 CSS,例如灰色)?
示例:我单击过滤器“stuff2”,在 category2 中没有匹配的项目,因此 jQuery 向 category2 添加了一个类,就像将它们变灰一样。
我的同位素代码:
jQuery.noConflict();
(function($){
var $container = $('#container'),
filters = {};
$container.isotope({
itemSelector : '.element',
{mfilterscript}
{mfilterscript2}
});
// filter buttons
$('.filter a').click(function(){
var $this = $(this);
// don't proceed if already selected
if ( $this.hasClass('selected') ) {
return;
}
var $optionSet = $this.parents('.option-set');
// change selected class
$optionSet.find('.selected').removeClass('selected');
$this.addClass('selected');
// store filter value in object
// i.e. filters.color = 'red'
var group = $optionSet.attr('data-filter-group');
filters[ group ] = $this.attr('data-filter-value');
// convert object into array
var isoFilters = [];
for ( var prop in filters ) {
isoFilters.push( filters[ prop ] )
}
var selector = isoFilters.join('');
$container.isotope({ filter: selector });
return false;
});
})(jQuery);
【问题讨论】:
标签: jquery filter filtering jquery-isotope