JavaScript components
Masonry
Folder: app/modules/Masonry
Masonry is a JavaScript grid layout library. It works by placing elements in optimal position based on available vertical space, sort of like a mason fitting stones in a wall.
It was used to accomplish the project photos gallery:
The function responsable for the grid gallery can be found in app/js/src/script.js > enableGridGallery:
enableGridGallery: function() {
$('.sh__gridGallery').each(function( i, el ){
var item = $(el).find('.sh__gridItem');
$(el).masonry({
itemSelector: '.sh__gridItem',
columnWidth: '.sh__gridItem',
horizontalOrder: true
});
});
}
#
Slick slider
Folder: app/modules/slick
This plugin is used to create responsive sliders inside your website.
The page slider can be setup from app/js/src/script.js
. In this file you can find the initSlider function which allows you to customize the slider settings:
self.homepageSlider.slick({
infinite: true,
arrows: true,
slidesToShow: 3,
slidesToScroll: 3,
responsive: [
{
breakpoint: 768,
settings: {
slidesToShow: 1,
slidesToScroll: 1
}
}
]
});
You can find more settings at http://kenwheeler.github.io/slick/
Each slider item style can be customized from css/scss/_homepage.scss
Also if you want to add more slider items in your homepage, you will have to add a new div which contain the “sh__slider-item
” class inside your “sh__sliderky__slider
“.
Magnific-Popup
Folder: app/modules/Magnific-Popup
This plugin is used for images and video popup, photo gallery and many others:
The photo gallery from single pages was built with this module and the specific function can be found in app/js/src/script.js > enablePopupGallery.
You can disable the photo gallery from script.js > init function> and remove the line this.enablePopupGallery();