1( function( $ ) { 2 3 var pxl_swiper_handler = function( $scope, $ ) { 4 5 var breakpoints = elementorFrontend.config.breakpoints, 6 carousel = $scope.find(".pxl-swiper-container"); 7 if(carousel.length == 0){ 8 return false; 9 } 10 11 /* Arrow Custom */ 12 $('.pxl-swiper-arrow-custom').parents('.pxl-swiper-sliders').addClass('pxl--hide-arrow'); 13 $('.pxl-navigation-carousel').parents('.elementor-section').addClass('pxl--hide-arrow'); 14 setTimeout(function() { 15 $('.pxl-swiper-arrow-custom.pxl-swiper-arrow-next').on('click', function () { 16 $(this).parents('.pxl-swiper-sliders').find('.pxl-swiper-arrow-main.pxl-swiper-arrow-next').trigger('click'); 17 }); 18 $('.pxl-swiper-arrow-custom.pxl-swiper-arrow-prev').on('click', function () { 19 $(this).parents('.pxl-swiper-sliders').find('.pxl-swiper-arrow-main.pxl-swiper-arrow-prev').trigger('click'); 20 }); 21 }, 300); 22 23 setTimeout(function() { 24 $('.pxl-navigation-carousel .pxl-navigation-arrow-prev').on('click', function () { 25 $(this).parents('.elementor-section').find('.pxl-swiper-arrow.pxl-swiper-arrow-prev').trigger('click'); 26 }); 27 $('.pxl-navigation-carousel .pxl-navigation-arrow-next').on('click', function () { 28 $(this).parents('.elementor-section').find('.pxl-swiper-arrow.pxl-swiper-arrow-next').trigger('click'); 29 }); 30 }, 300); 31 32 /* Main Slider */ 33 var data = carousel.data(), 34 settings = data.settings, 35 carousel_settings = { 36 direction: settings['slide_direction'], 37 effect: settings['slide_mode'], 38 wrapperClass : 'pxl-swiper-wrapper', 39 slideClass: 'pxl-swiper-slide', 40 slidesPerView: settings['slides_to_show'], 41 slidesPerGroup: settings['slides_to_scroll'], 42 slidesPerColumn: settings['slide_percolumn'], 43 spaceBetween: 0, 44 navigation: {
45 nextEl: $scope.find(".pxl-swiper-arrow-next"), 46 prevEl: $scope.find(".pxl-swiper-arrow-prev"), 47 }, 48 pagination : { 49 el: $scope.find(".pxl-swiper-dots"), 50 clickable : true, 51 modifierClass: 'pxl-swiper-pagination-', 52 bulletClass : 'pxl-swiper-pagination-bullet', 53 renderCustom: function (swiper, element, current, total) { 54 return current + ' of ' + total; 55 }, 56 type: settings['pagination_type'], 57 }, 58 speed: settings['speed'], 59 watchSlidesProgress: true, 60 watchSlidesVisibility: true, 61 breakpoints: { 62 0 : { 63 slidesPerView: settings['slides_to_show_xs'], 64 slidesPerGroup: settings['slides_to_scroll'], 65 }, 66 576 : { 67 slidesPerView: settings['slides_to_show_sm'], 68 slidesPerGroup: settings['slides_to_scroll'], 69 }, 70 768 : { 71 slidesPerView: settings['slides_to_show_md'], 72 slidesPerGroup: settings['slides_to_scroll'], 73 }, 74 1025 : { 75 slidesPerView: settings['slides_to_show_lg'], 76 slidesPerGroup: settings['slides_to_scroll'], 77 }, 78 1200 : { 79 slidesPerView: settings['slides_to_show'], 80 slidesPerGroup: settings['slides_to_scroll'], 81 }, 82 1600 : { 83 slidesPerView: settings['slides_to_show_xxl'], 84 slidesPerGroup: settings['slides_to_scroll'], 85 } 86 }, 87 on: { 88 progress: function (swiper) { 89 var el_id = $scope.find('.pxl-slider-progressbar'); 90 var el_width = 1; 91 var el_autoplayTime = settings['delay'] / 100; 92 var el_id_slider = setInterval(f_frame, el_autoplayTime); 93 function f_frame() { 94 if (el_width >= 100) { 95 clearInterval(el_id_slider); 96 } else { 97 el_width++; 98 el_id.css('width', el_width + '%'); 99 } 100 } 101 }, 102 103 slideChangeTransitionStart : function (swiper){ 104 var activeIndex = this.activeIndex; 105 var current = this.slides.eq(activeIndex); 106 107 $scope.find('.pxl-element-slider .pxl-swiper-slide .wow').each(function(){ 108 $(this).removeClass('animated').addClass('pxl-invisible'); 109 }); 110 current.find('.pxl-element-slider .wow').each(function(){ 111 $(this).removeClass('pxl-invisible').addClass('animated'); 112 }); 113 114 }, 115 116 slideChange: function (swiper) { 117 118 var activeIndex = this.activeIndex; 119 var current = this.slides.eq(activeIndex); 120 121 $scope.find('.pxl-element-slider .pxl-swiper-slide .wow').each(function(){ 122 $(this).removeClass('animated').addClass('pxl-invisible'); 123 }); 124 current.find('.pxl-element-slider .wow').each(function(){ 125 $(this).removeClass('pxl-invisible').addClass('animated'); 126 }); 127 128 }, 129 130 sliderMove: function (swiper) { 131 132 var activeIndex = this.activeIndex; 133 var current = this.slides.eq(activeIndex); 134 135 $scope.find('.pxl-element-slider .pxl-swi
135per-slide .wow').each(function(){ 136 $(this).removeClass('animated').addClass('pxl-invisible'); 137 }); 138 current.find('.pxl-element-slider .wow').each(function(){ 139 $(this).removeClass('pxl-invisible').addClass('animated'); 140 }); 141 142 }, 143 144 } 145 }; 146 147 // center 148 if(settings['center'] === 'true'){ 149 carousel_settings['centeredSlides'] = true; 150 } 151 // effect 152 if(settings['slide_mode'] === 'fade'){ 153 carousel_settings['fadeEffect'] = { 154 crossFade: true 155 }; 156 } 157 // loop 158 if(settings['loop'] === 'true'){ 159 carousel_settings['loop'] = true; 160 } 161 // auto play 162 if(settings['autoplay'] === 'true'){ 163 carousel_settings['autoplay'] = { 164 delay : settings['delay'], 165 disableOnInteraction : settings['pause_on_interaction'] 166 }; 167 } else { 168 carousel_settings['autoplay'] = false; 169 } 170 171 carousel.each(function(index, element) { 172
173 var carousel_thumb = $scope.find(".pxl-swiper-thumbs"); 174 var center = $scope.find(".pxl-swiper-thumbs").data("center"); 175 var loop = $scope.find(".pxl-swiper-thumbs").data("loop"); 176 var thumbxs = $scope.find(".pxl-swiper-thumbs").data("thumbxs"); 177 var thumbsm = $scope.find(".pxl-swiper-thumbs").data("thumbsm"); 178 var thumbmd = $scope.find(".pxl-swiper-thumbs").data("thumbmd"); 179 var thumblg = $scope.find(".pxl-swiper-thumbs").data("thumblg"); 180 if (carousel_thumb.length > 0) { 181 var galleryThumbs = new Swiper(carousel_thumb, { 182 spaceBetween: 0, 183 slidesPerView: 3, 184 freeMode: true, 185 watchSlidesProgress: true, 186 centeredSlides: center, 187 loop: loop, 188 breakpoints: { 189 0 : { 190 slidesPerView: typeof thumbxs !== 'undefined' ? thumbxs : 1, 191 }, 192 576 : { 193 slidesPerView: typeof thumbsm !== 'undefined' ? thumbsm : 2, 194 }, 195 768 : { 196 slidesPerView: typeof thumbmd !== 'undefined' ? thumbmd : 3, 197 }, 198 1025 : { 199 slidesPerView: typeof thumblg !== 'undefined' ? thumblg : 3, 200 }, 201 } 202 }); 203 carousel_settings['thumbs'] = { swiper: galleryThumbs }; 204 } 205 206 var swiper = new Swiper(carousel, carousel_settings); 207 208 if(settings['autoplay'] === 'true' && settings['pause_on_hover'] === 'true'){ 209 $(this).on({ 210 mouseenter: function mouseenter() { 211 this.swiper.autoplay.stop(); 212 }, 213 mouseleave: function mouseleave() { 214 this.swiper.autoplay.start(); 215 } 216 }); 217 } 218 219 $scope.find(".swiper-filter-wrap .filter-item").on("click", function(){ 220 var target = $(this).attr('data-filter-target'); 221 var parent = $(this).closest('.pxl-swiper-sliders'); 222 $(this).siblings().removeClass("active"); 223 $(this).addClass("active"); 224 225 if(target == "all"){ 226 parent.find("[data-filter]").removeClass("non-swiper-slide").addClass("swiper-slide-filter"); 227 swiper.destroy(); 228 swiper = new Swiper(carousel, carousel_settings); 229 } else { 230 231 parent.find(".swiper-slide-filter").not("[data-filter^='"+target+"'], [data-filter*=' "+target+"']").addClass("non-swiper-slide").removeClass("swiper-slide-filter"); 232 parent.find("[data-filter^='"+target+"'], [data-filter*=' "+target+"']").removeClass("non-swiper-slide").addClass("swiper-slide-filter"); 233 swiper.destroy(); 234 swiper = new Swiper(carousel, carousel_settings); 235 } 236 }); 237 238 $('.swiper-filter-wrap').parents('.pxl-swiper-sliders').addClass('swiper-filter-active'); 239 240 }); 241 242 }; 243 244 // Make sure you run this code under Elementor. 245 $( window ).on( 'elementor/frontend/init', function() { 246 // Swipers 247 elementorFrontend.hooks.addAction( 'frontend/element_ready/pxl_post_carousel.default', pxl_swiper_handler ); 248 elementorFrontend.hooks.addAction( 'frontend/element_ready/pxl_slider.default', pxl_swiper_handler ); 249 elementorFrontend.hooks.addAction( 'frontend/element_ready/pxl_testimonial_carousel.default', pxl_swiper_handler ); 250 elementorFrontend.hooks.addAction( 'frontend/element_ready/pxl_team_carousel.default', pxl_swiper_handler ); 251 elementorFrontend.hooks.addAction( 'frontend/element_ready/pxl_case_carousel.default', pxl_swiper_handler ); 252 elementorFrontend.hooks.addAction( 'frontend/element_ready/pxl_partner_carousel.default', pxl_swiper_handler ); 253 } ); 254} )( jQuery );
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.