policybot/fassets/js/plugins.gridfilter.js
2021-11-30 16:26:55 +05:30

42 lines
1.1 KiB
JavaScript

window.scwGridFilterPlugin = window.scwGridFilterPlugin || {};
window.SEMICOLON_gridFilterInit = function( $gridFilterEl ){
$gridFilterEl = $gridFilterEl.filter(':not(.customjs)');
if( $gridFilterEl.length < 1 ){
return true;
}
$gridFilterEl.each( function(){
let element = $(this),
elCon = element.attr('data-container'),
elActClass = element.attr('data-active-class'),
elDefFilter = element.attr('data-default');
if( !elActClass ) { elActClass = 'activeFilter'; }
element.find('a').off( 'click' ).on( 'click', function(){
element.find('li').removeClass( elActClass );
$(this).parent('li').addClass( elActClass );
let selector = $(this).attr('data-filter');
$(elCon).isotope({ filter: selector });
return false;
});
if( elDefFilter ) {
element.find('li').removeClass( elActClass );
element.find('[data-filter="'+ elDefFilter +'"]').parent('li').addClass( elActClass );
$(elCon).isotope({ filter: elDefFilter });
}
});
$('.grid-shuffle').off( 'click' ).on( 'click', function(){
let element = $(this),
elCon = element.attr('data-container');
$(elCon).isotope('shuffle');
});
};