Сбросить фильтры jQuery изотопные фильтры и сортировка
-
13-12-2019 - |
Вопрос
У меня есть несколько фильтров Isotope jQuery isoTope и своего рода.Все работает очень хорошо, но я хотел бы создать кнопку сброса.
Я попробовал следующее (http://stackoverflow.com/questions/10297558/isotope-reset-all-combination-filters), но пока, кажется, сбрасывает элементы (во втором клике), это делаетне сбрасывать кнопки фильтра.
Решение
Я могу только предположить, что вы имеете в виду: «Это не сбрасывается внешний вид кнопок фильтра" при написании
[...] Это не сбрасывает кнопки фильтра.
Если это так, и внешний вид ваших кнопок фильтра контролируется CSS-классами, как и в примерах изотопа, вам просто нужно удалить указанные CSS-класс (ES) из элементов кнопки фильтра, когда пользователь нажимает «Сброс» -путтон.
в источнике е. грамм. Комбинированные фильтры ISOTOPE " Вы найдете следующий код, который обрабатывает все Происходит, когда нажат один из кнопок фильтра:
// 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;
});
.
Важный код (надеюсь), связанный с вашим вопросом, можно найти в этих строках:
$optionSet.find('.selected').removeClass('selected');
$this.addClass('selected');
.
- .
- Первая строка удаляет все «выбранные классы» от всех элементов в $ apationset (последняя просто набор кнопок, ориентированных на единое свойство фильтра)
- Второе устанавливает «выбранный класс для элемента, который пользователь нажал на