| 1 |
(function ($, elementor) { |
| 2 |
|
| 3 |
'use strict'; |
| 4 |
|
| 5 |
var widgetHeavenSlider = function ($scope, $) { |
| 6 |
|
| 7 |
var $slider = $scope.find('.ultimate-store-kit'), |
| 8 |
$mainSlider = $scope.find('.usk-heaven-slider'); |
| 9 |
if (!$slider.length) { |
| 10 |
return; |
| 11 |
} |
| 12 |
|
| 13 |
var $sliderContainer = $slider.find('.usk-main-slider'), |
| 14 |
$settings = $mainSlider.data('settings'); |
| 15 |
|
| 16 |
const Swiper = elementorFrontend.utils.swiper; |
| 17 |
initSwiper(); |
| 18 |
async function initSwiper() { |
| 19 |
var mainSlider = await new Swiper($sliderContainer, $settings); |
| 20 |
|
| 21 |
if ($settings.pauseOnHover) { |
| 22 |
$($sliderContainer).hover(function () { |
| 23 |
(this).swiper.autoplay.stop(); |
| 24 |
}, function () { |
| 25 |
(this).swiper.autoplay.start(); |
| 26 |
}); |
| 27 |
} |
| 28 |
|
| 29 |
var $thumbs = $slider.find('.usk-thumbs-slider'); |
| 30 |
|
| 31 |
var sliderThumbs = await new Swiper($thumbs, { |
| 32 |
parallax: true, |
| 33 |
direction: 'vertical', |
| 34 |
spaceBetween: 10, |
| 35 |
slideToClickedSlide: true, |
| 36 |
loop: ($settings.loop) ? $settings.loop : false, |
| 37 |
speed: ($settings.speed) ? $settings.speed : 800, |
| 38 |
loopedSlides: 4, |
| 39 |
centeredSlides: true, |
| 40 |
slidesPerView: 3, |
| 41 |
initialSlide: 0, |
| 42 |
keyboardControl: true, |
| 43 |
mousewheelControl: true, |
| 44 |
lazyLoading: true, |
| 45 |
preventClicks: false, |
| 46 |
preventClicksPropagation: false, |
| 47 |
lazyLoadingInPrevNext: true, |
| 48 |
breakpoints: { |
| 49 |
768: { |
| 50 |
slidesPerView: 5, |
| 51 |
}, |
| 52 |
} |
| 53 |
}); |
| 54 |
|
| 55 |
mainSlider.controller.control = sliderThumbs; |
| 56 |
sliderThumbs.controller.control = mainSlider; |
| 57 |
}; |
| 58 |
}; |
| 59 |
|
| 60 |
|
| 61 |
jQuery(window).on('elementor/frontend/init', function () { |
| 62 |
elementorFrontend.hooks.addAction('frontend/element_ready/usk-heaven-slider.default', widgetHeavenSlider); |
| 63 |
}); |
| 64 |
|
| 65 |
}(jQuery, window.elementorFrontend)); |