2016-02-19 2 views
0

Я искал везде изотопный пример, который я действительно могу понять, это не намного выше моей головы!Простой пример фильтрации изотопов кнопок, пожалуйста?

и желательно без многомерных массивов? : |

Вот jsfiddle того, что я в настоящее время https://jsfiddle.net/LL39kwue/2/

var $grid = $('#grid').isotope({ 
    itemSelector: '.item', 
    layoutMode: 'packery', 
}); 
$(function() { 
    var $buttons = $('#filter-menu button'); 
    $buttons.on('click', function() { 
    var filterValue = $(this).attr('data-filter'); 
    $(this).addClass('active').siblings().removeClass('active'); 
    $grid.isotope({ 
     filter: filterValue 
    }); 
    }); 
}); 

Я просто хочу, чтобы иметь возможность выбрать более одного варианта фильтра в то время, например. .category-1, .category-2

Я уже пробовал объединить шахту с этим CheckBox например http://codepen.io/desandro/pen/qaEsi

$(function() { 
    var $buttons = $('#filter-menu button'); 
    var filters = []; 
    $buttons.on('click', function() { 
    var filterValue = $(this).attr('data-filter'); 
    filters.push(filterValue); 
    $(this).addClass('active'); 
    }); 
    filters = filters.join(', '); 
    $grid.isotope({ 
    filter: filters 
    }); 
}); 

Но что возвращает: неперехваченным TypeError: filters.push не является функцией

ответ

1

Я понял!

проблема, с которой я столкнулся, использовала фильтры = filters.join (',');

Она должна быть

something_else = filters.join(', '); 
$grid.isotope({ 
    filter: something_else 
}); 

Я не знаю, как ты имел в виду, чтобы понять, что из ошибки: Uncaught TypeError: filters.push не является функцией: |

Работы jsfiddle здесь https://jsfiddle.net/8mj4nftv/2/

Смежные вопросы