1(function($) { 2 3 /*======================================================================// 4 // script.js // 5 //======================================================================*/ 6 7 $(document).ready(function() { 8 // Sticky headere on scroll 9 jQuery(window).scroll(function() { 10 var scroll = jQuery(window).scrollTop(); 11 12 if (scroll >= 41) { 13 jQuery("body").addClass("scroll"); 14 } else { 15 jQuery("body").removeClass("scroll"); 16 } 17 }); 18 19 }); 20 21 $(window).on('load', function() { 22 // code goes here 23 }); 24 25 26 var elementsToAnimate = document.querySelectorAll('.stom-animation'); 27 if (elementsToAnimate) { 28 29 var scroll = window.requestAnimationFrame || 30 function(callback) { window.setTimeout(callback, 1000 / 60) }; 31 32 function loop() { 33 elementsToAnimate.forEach(function(element) { 34 if (isElementInViewport(element)) { 35 element.classList.add('is-visible'); 36 } else { 37 element.classList.remove('is-visible'); 38 } 39 }); 40 scroll(loop); 41 } 42 loop();
43 44 function isElementInViewport(el) { 45 if (typeof jQuery === "function" && el instanceof jQuery) { 46 el = el[0]; 47 } 48 var rect = el.getBoundingClientRect(); 49 return ( 50 (rect.top <= 0 && 51 rect.bottom >= 0) || 52 (rect.bottom >= (window.innerHeight || document.documentElement.clientHeight) && 53 rect.top <= (window.innerHeight || document.documentElement.clientHeight)) || 54 (rect.top >= 0 && 55 rect.bottom <= (window.innerHeight || document.documentElement.clientHeight)) 56 ); 57 } 58 59 } 60 61 // Custom Events slick slider 62 STOM.pageSliderService = function() { 63 if (!$('.calendar .events-container').length) return; 64 if (jQuery.fn.slick) { 65 $('.calendar .events-container').slick({ 66 dots: false, 67 prevArrow: '<button type="button" class="slick-prev">' + stomFaIcons.slick.buttonPrevArrow + '</button>', 68 nextArrow: '<button type="button" class="slick-next">' + stomFaIcons.slick.buttonNextArrow + '</button>', 69 lazyLoad: 'progressive', 70 speed: 175, 71 draggable: true, 72 arrows: true, 73 prevArrow: '<button type="button" class="slick-prev">' + stomFaIcons.slick.buttonPrev + '</button>', 74 nextArrow: '<button type="button" class="slick-next">' + stomFaIcons.slick.buttonNext + '</button>', 75 dots: false, 76 autoplay: true, 77 autoplaySpeed: 4000, 78 slidesToShow: 5, 79 centerMode: true, 80 slidesToScroll: 1, 81 responsive: [{ 82 breakpoint: 1921, 83 settings: { 84 slidesToShow: 4, 85 slidesToScroll: 1 86 } 87 }, 88 { 89 breakpoint: 1201, 90 settings: { 91 slidesToShow: 3, 92 slidesToScroll: 1 93 } 94 }, 95 { 96 breakpoint: 960, 97 settings: { 98 slidesToShow: 2, 99 slidesToScroll: 1 100 } 101 }, 102 { 103 breakpoint: 640, 104 settings: { 105 slidesToShow: 1, 106 slidesToScroll: 1 107 } 108 } 109 ], 110 }) 111 // .on('setPosition', function(event, slick) { 112 // slick.$slides.css('height', slick.$slideTrack.height() + 'px'); 113 // }); 114 } else { 115 pre('Slick Slider Could\'t Initialize'); 116 } 117 } 118 STOM.pageSliderService(); 119 120 // Simple slick slider 121 if (!function_exists('slickSliderHandler')) { 122 STOM.slickSliderHandler = function() { 123 if (!$('.stom-simple-slider').length) return; 124 125 if (jQuery.fn.slick) { 126 $('.stom-simple-slider').slick({ 127 lazyLoad: 'progressive', 128 speed: 175, 129 draggable: true, 130 arrows: true, 131 prevArrow: '<button type="button" class="slick-prev">' + stomFaIcons.slick.buttonPrev + '</button>', 132 nextArrow: '<button type="button" class="slick-next">' + stomFaIcons.slick.buttonNext + '</button>', 133 dots: true, 134 autoplay: true, 135 autoplaySpeed: 4000, 136 slidesToShow: 5, 137 centerMode: false, 138 slidesToScroll: 1, 139 responsive: [{ 140 breakpoint: 1200, 141 settings: { 142 slidesToShow: 3, 143 slidesToScroll: 3 144 } 145 }, 146 { 147 breakpoint: 959, 148 settings: { 149 slidesToShow: 3, 150 slidesToScroll: 3 151 } 152 }, 153 { 154 breakpoint: 639, 155 settings: { 156 slidesToShow: 3, 157 slidesToScroll: 3 158 } 159 } 160 ], 161 }) 162 .on('setPosition', function(event, slick) { 163 slick.$slides.css('height', slick.$slideTrack.height() + 'px'); 164 }); 165 } else { 166 pre('Slick Slider Could\'t Initialize'); 167 } 168 } 169 STOM.slickSliderHandler(); 170 } 171 172 173 174 $(document).on('click', '.stom-medarbejder-read-more a', function(e) { 175 e.preventDefault(); 176 177 $(this).closest('.stom-medarbejder-wrapper').addClass('popup-active'); 178 });
179 180 $(document).on('click', '.stom-medarbejder-popup-close a', function(e) { 181 e.preventDefault(); 182 183 $(this).closest('.stom-medarbejder-wrapper').removeClass('popup-active'); 184 }); 185 186 $(document).on('click', '.stom-medarbejder-popup', function(e) { 187 if (e.target === this) { 188 $(this).closest('.stom-medarbejder-wrapper').removeClass('popup-active'); 189 } 190 }); 191 192 193 /*======================================================================// 194 // END script.js // 195 //======================================================================*/ 196 197 198 199 /*======================================================================// 200 // woocommerce.js // 201 //======================================================================*/ 202 203 $(document).ready(function() { 204 // code goes here 205 }); 206 207 208 209 $(window).on('load', function() { 210 // code goes here 211 }); 212 213 /*======================================================================// 214 // END woocommerce.js // 215 //======================================================================*/ 216 217})(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.