Всем привет.
Вчера делал фильтр на js для товаров, но понимаю что код получился громоздкий.
Есть 4 selectа ( color, size, category, author )
Есть 500+ div.product у каждого из них есть атрибуты ( color, size, category, author )
Задача:
если select color выбран, фильтровать все div.product по select'у color, если select color не выбран, то не применять фильтр color. И так для остальных select'ов
Вроде всё ясно, Но как сделать так что-бы фильтры комбинировались, не слетали.
У меня было так примерно.
input.on('change',function(e){
$('.product').each( function(i,el){
$( el ).attr('color') === e.target.value ? $( el ).show() : $( el ).hide(); // <-- проблема в hide, фильтры нельзя комбинировать, т.к. они слетают после применения след. фильтра
});
});