/* Template Name: Toner eCommerce + Admin HTML Template Author: Themesbrand Version: 1.2.0 Website: https://Themesbrand.com/ Contact: Themesbrand@gmail.com File: landing-index Js File */ // Portfolio Filter document.addEventListener("DOMContentLoaded", function (event) { // init Isotope var GalleryWrapper = document.querySelector('.gallery-wrapper'); if (GalleryWrapper) { var iso = new Isotope('.gallery-wrapper', { itemSelector: '.element-item', layoutMode: 'fitRows' }); } // bind filter button click var filtersElem = document.querySelector('.categories-filter'); if (filtersElem) { filtersElem.addEventListener('click', function (event) { // only work with buttons if (!matchesSelector(event.target, 'li a')) { return; } var filterValue = event.target.getAttribute('data-filter'); if (filterValue) { // use matching filter function iso.arrange({ filter: filterValue }); } }); } // change is-checked class on buttons var buttonGroups = document.querySelectorAll('.categories-filter'); if (buttonGroups) { Array.from(buttonGroups).forEach(function (btnGroup) { var buttonGroup = btnGroup; radioButtonGroup(buttonGroup); }); } function radioButtonGroup(buttonGroup) { buttonGroup.addEventListener('click', function (event) { // only work with buttons if (!matchesSelector(event.target, 'li a')) { return; } buttonGroup.querySelector('.active').classList.remove('active'); event.target.classList.add('active'); }); } }); // TESti Monial slider var swiper = new Swiper(".testi-slider", { spaceBetween: 20, loop: true, loopFillGroupWithBlank: true, pagination: { el: ".swiper-pagination", clickable: true, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, breakpoints: { 00: { slidesPerView: 1 }, 768: { slidesPerView: 2 }, 1200: { slidesPerView: 3 } } }); // latest product slider var swiper = new Swiper(".latest-slider", { spaceBetween: 30, loop: 'true', slidesPerView: 1, pagination: { el: ".swiper-pagination", clickable: true, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, breakpoints: { 576: { slidesPerView: 2, }, 768: { slidesPerView: 2, }, 1024: { slidesPerView: 4, }, }, });