1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
(function( $ ){
const grid = {
breakpoint: 768,
gridWrapper: $('.gallery__wrapper'),
gridItem: $('.gallery__item'),
resize: false,
isResponsive () {
return $(window).width() <= this.breakpoint;
},
onResize () {
var self = this;
$(window).resize(function() {
if (self.resize) {
clearTimeout(self.resize);
}
self.resize = setTimeout(function() {
self.heightGrid();
self.resize = false;
}, 200);
});
},
heightGrid () {
var self = this;
self.gridItem.each(function(){
var width = $(self).width();
$(self).css('height', width);
});
},
isotope () {
var $grid = $('.gallery__wrapper');
$grid.isotope({
// options
filter: '*',
itemSelector: '.gallery__item-link',
layoutMode: 'fitRows'
});
// filter .graphisme items
$grid.isotope({ filter: '.graphisme' });
// filter .illustrations items
$grid.isotope({ filter: '.illustrations' });
// filter .labo items
$grid.isotope({ filter: '.labo' });
// show all items
$grid.isotope({ filter: '*' });
$('body').on('click', '.header-wrapper__nav button, .header-wrapper__nav-overlay button', function(){
setTimeout(() => {
$('body').removeClass('active');
}, 250);
$(this).parents('ul').find('li').removeClass('current');
$(this).parent().addClass('current');
var selector = $(this).attr('data-filter');
$grid.isotope({
filter: selector,
animationOptions: {
duration: 750,
easing: 'linear',
queue: false
}
});
return false;
});
},
addEvents () {
this.heightGrid();
this.onResize();
this.isotope();
},
init () {
this.addEvents();
}
};
$(document).ready(function(){
grid.init();
});
module.exports = grid;
})( jQuery ); |
Partager