// Swiper
// init Swiper:
let pageSlider = new Swiper('.wrapper', {
// Свои классы
wrapperClass: "page-wrapper",
slideClass: "page-screen",
// Вертикальный слайдер
direction: 'vertical',
// Количество слайдов для показа
slidesPerView: 'auto',
// Включаем параллакс
parallax: true,
// Управленрие клавиатурой
keyboard: {
// Включить\выключить
enabled: true,
// Включить\выключить
// только когда слайдер
// в пределах вьюпорта
onlyInViewport: true,
// Включить\выключить
// управление клавишами
// pageUp, pageDown
pageUpDown: true,
},
// Управление колесом мыши
mousewheel: {
// Чувствительность колеса мыши
sensitivity: 1,
// Класс обьекта на котором
// будет срабатывать прокрутка мыши
// eventsTarget: ".image-slider"
},
// Отключить функционала
// если слайдов меньше чем нужно
whatchOverflow: true,
// Скорость
speed: 800,
// Обновить свайпер
// при изменении элементов слайдера
observer: true,
// Обновить свайпер
// при изменении родительских
// элементов слайдера
observeParants: true,
// Обновить свайпер
// при изменении дочерних
// элементов слайдера
observeSlideChaildren: true,
// Навигация
// Буллетыб текущее положениеб прогрессбыр
pagination: {
el: '.page-pagination',
type: 'bullets',
clickable: true,
bulletClass: "page-bullet",
bulletActiveClass: "page-bullet-active",
},
// Скролл
scrollbar: {
el: '.page-scroll',
dragClass: "page-drag-scroll",
// Возможность перетаскивать скролл
draggable: false,
}
});
// Header color change
$(document).ready(function(){
// Change this to the correct selector.
$('nav.navbar').midnight();
});
// Popup Open or Close
const popupLinks = document.querySelectorAll('.popup-link');
const body = document.querySelectorAll('body');
const lockPadding = document.querySelectorAll('.lock-padding');
let unlock = true;
const timeout = 800;
if (popupLinks.length > 0) {
for (let index = 0; index < popupLinks.length; index++) {
const popupLink = popupLinks[index];
popupLink.addEventListener('click', function (e) {
const popupName = popupLink.getAttribute('href').replace('#', '');
const curentPopup = document.getElementById(popupName);
popupOpen(curentPopup);
e.preventDefault();
});
}
}
const popupCloseIcon = document.querySelectorAll('.close-popup');
if (popupCloseIcon.length > 0) {
for (let index = 0; index < popupCloseIcon.length; index++) {
const el = popupCloseIcon[index];
el.addEventListener('click', function (e) {
popupClose(el.closest('.popup'));
e.preventDefault();
})
}
}
function popupOpen(curentPopup) {
if ( curentPopup && unlock) {
const popupActive = document.querySelector('.popup.open');
if (popupActive) {
popupClose(popupActive, false);
}
curentPopup.classList.add('open');
curentPopup.addEventListener('click', function (e) {
if (!e.target.closest('.popup-content')) {
popupClose(e.target.closest('.popup'));
}
});
}
}
function popupClose(popupActive, doUnlock = true) {
if (unlock) {
popupActive.classList.remove('open');
if (doUnlock) {
bodyUnlock();
}
}
}
function bodyLock() {
const lockPaddingValue = window.innerWidth - document.querySelector('.swiper-container').offsetwidth + 'px';
if (lockPadding.length > 0) {
for (let index = 0; index < lockPadding.length; index++ ) {
const el = lockPadding[index];
el.getElementsByClassName.paddingRight = lockPaddingValue;
}
}
body.stylr.paddingRight = lockPaddingValue;
body.classList.add('lock');
unlock = false;
setTimeout(function () {
unlock = true;
}, timeout);
}
function bodyUnlock() {
setTimeout(function () {
for (let index = 0; index < lockPadding.length; index++ ) {
const el = lockPadding[index];
el.getElementsByClassName.paddingRight = '0px';
}
body.style.paddingRight = '0px';
body.classList.remove('lock');
}, timeout);
unlock = false;
setTimeout(function () {
unlock = true;
}, timeout);
}
document.addEventListener('keydown', function (e) {
if (e.which === 27) {
const popupActive = document.querySelector('.popup.open');
popupClose(popupActive);
}
});
(function () {
//Проверяем поддержку
if (!Element.prototype.closest) {
//реализуем
Element.prototype.closest = function (css) {
var node = this;
while (node) {
if (node.matches(css)) return node;
else node = node.parentElement;
}
return null
};
}
})();
(function () {
//Проверяем поддержку
if (!Element.prototype.matches) {
// определяем свойство
Element.prototype.matches = Element.prototype.matchesSelector ||
Element.prototype.webkitMatchesSelector ||
Element.prototype.mozMatchesSelector ||
Element.prototype.msMatchesSelector;
}
})();
//slider slick
$(document).ready(function () {
$('.slider').slick({
arrows:true,
dots:false,
slidesToShow:2,
easing:'ease',
infinite:true,
centerMode: true,
});
});