1(function($) { 2 3 "use strict"; 4 5 //Hide Loading Box (Preloader) 6 function handlePreloader() { 7 if($('.loader-wrap').length){ 8 $('.loader-wrap').delay(1000).fadeOut(500); 9 } 10 } 11 12 if ($(".preloader-close").length) { 13 $(".preloader-close").on("click", function(){ 14 $('.loader-wrap').delay(200).fadeOut(500); 15 }) 16 } 17 18 19 20 //Update Header Style and Scroll to Top 21 function headerStyle() { 22 if($('.main-header').length){ 23 var windowpos = $(window).scrollTop(); 24 var siteHeader = $('.main-header'); 25 var scrollLink = $('.scroll-top'); 26 if (windowpos >= 150) { 27 siteHeader.addClass('fixed-header'); 28 scrollLink.addClass('open'); 29 } else { 30 siteHeader.removeClass('fixed-header'); 31 scrollLink.removeClass('open'); 32 } 33 } 34 } 35 36 headerStyle(); 37 38 39 //Submenu Dropdown Toggle 40 if($('.main-header li.menu-item-has-children ul').length){ 41 $('.main-header .navigation li.menu-item-has-children').append('<div class="dropdown-btn"><span class="fas fa-angle-down"></span></div>'); 42 43 } 44 45 //Mobile Nav Hide Show 46 if($('.mobile-menu').length){ 47 48 $('.mobile-menu .menu-box').mCustomScrollbar(); 49 50 var mobileMenuContent = $('.main-header .menu-area .main-menu').html(); 51 $('.mobile-menu .menu-box .menu-outer').append(mobileMenuContent); 52 $('.sticky-header .main-menu').append(mobileMenuContent); 53 54 //Dropdown Button 55 $('.mobile-menu li.menu-item-has-children .dropdown-btn').on('click', function() { 56 $(this).toggleClass('open'); 57 $(this).prev('ul').slideToggle(500); 58 }); 59 //Dropdown Button 60 $('.mobile-menu li.menu-item-has-children .dropdown-btn').on('click', function() { 61 $(this).prev('.megamenu').slideToggle(900); 62 }); 63 //Menu Toggle Btn 64 $('.mobile-nav-toggler').on('click', function() { 65 $('body').addClass('mobile-menu-visible'); 66 }); 67 68 //Menu Toggle Btn 69 $('.mobile-menu .menu-backdrop,.mobile-menu .close-btn').on('click', function() { 70 $('body').removeClass('mobile-menu-visible'); 71 }); 72 } 73 74 75 // Scroll to a Specific Div 76 if($('.scroll-to-target').length){ 77 $(".scroll-to-target").on('click', function() { 78 var target = $(this).attr('data-target'); 79 // animate 80 $('html, body').animate({ 81 scrollTop: $(target).offset().top 82 }, 1000); 83 84 }); 85 } 86 87 // Elements Animation 88 if($('.wow').length){ 89 var wow = new WOW({ 90 mobile: false 91 }); 92 wow.init(); 93 } 94 95 96 //Fact Counter + Text Count 97 if($('.count-box').length){ 98 $('.count-box').appear(function(){ 99 100 var $t = $(this), 101 n = $t.find(".count-text").attr("data-stop"), 102 r = parseInt($t.find(".count-text").attr("data-speed"), 10); 103 104 if (!$t.hasClass("counted")) { 105 $t.addClass("counted"); 106 $({ 107 countNum: $t.find(".count-text").text() 108 }).animate({ 109 countNum: n 110 }, { 111 duration: r, 112 easing: "linear", 113 step: function() { 114 $t.find(".count-text").text(Math.floor(this.countNum)); 115 }, 116 complete: function() { 117 $t.find(".count-text").text(this.countNum); 118 } 119 }); 120 } 121 122 },{accY: 0}); 123 } 124 125 126 //LightBox / Fancybox 127 if($('.lightbox-image').length) { 128 $('.lightbox-image').fancybox({ 129 openEffect : 'fade', 130 closeEffect : 'fade', 131 helpers : { 132 media : {} 133 } 134 }); 135 } 136 137 138 //Tabs Box 139 if($('.tabs-box').length){ 140 $('.tabs-box .tab-buttons .tab-btn').on('click', function(e) { 141 e.preventDefault(); 142 var target = $($(this).attr('data-tab')); 143 144 if ($(target).is(':visible')){ 145 return false; 146 }else{ 147 target.parents('.tabs-box').find('.tab-buttons').find('.tab-btn').removeClass('active-btn'); 148 $(this).addClass('active-btn'); 149 target.parents('.tabs-box').find('.tabs-content').find('.tab').fadeOut(0); 150 target.parents('.tabs-box').find('.tabs-content').find('.tab').removeClass('active-tab'); 151 $(target).fadeIn(300); 152 $(target).addClass('active-tab'); 153 } 154 }); 155 } 156 157 158 159 //Accordion Box 160 if($('.accordion-box').length){ 161 $(".accordion-box").on('click', '.acc-btn', function() { 162 163 var outerBox = $(this).parents('.accordion-box'); 164 var target = $(this).parents('.accordion'); 165 166 if($(this).hasClass('active')!==true){ 167 $(outerBox).find('.accordion .acc-btn').removeClass('active'); 168 } 169 170 if ($(this).next('.acc-content').is(':visible')){ 171 return false; 172 }else{ 173 $(this).addClass('active'); 174 $(outerBox).children('.accordion').removeClass('active-block'); 175 $(outerBox).find('.accordion').children('.acc-content').slideUp(300); 176 target.addClass('active-block'); 177 $(this).next('.acc-content').slideDown(300); 178 } 179 }); 180 } 181 182 183 184 //Product Tabs 185 if($('.project-tab').length){ 186 $('.project-tab .project-tab-btns .p-tab-btn').on('click', function(e) { 187 e.preventDefault(); 188 var target = $($(this).attr('data-tab')); 189 190 if ($(target).hasClass('actve-tab')){ 191 return false; 192 }else{ 193 $('.project-tab .project-tab-btns .p-tab-btn').removeClass('active-btn'); 194 $(this).addClass('active-btn'); 195 $('.project-tab .p-tabs-content .p-tab').removeClass('active-tab'); 196 $(target).addClass('active-tab'); 197 } 198 }); 199 } 200 201 202 //Add One Page nav 203 if($('.scroll-nav').length) { 204 $('.scroll-nav').onePageNav(); 205 } 206 207 208 //Sortable Masonary with Filters 209 function enableMasonry() { 210 if($('.sortable-masonry').length){ 211 212 var winDow = $(window); 213 // Needed variables 214 var $container=$('.sortable-masonry .items-container'); 215 var $filter=$('.filter-btns'); 216 217 $container.isotope({ 218 filter:'*', 219 masonry: { 220 columnWidth : '.masonry-item.small-column' 221 }, 222 animationOptions:{ 223 duration:500, 224 easing:'linear' 225 } 226 }); 227 228 229 // Isotope Filter 230 $filter.find('li').on('click', function(){ 231 var selector = $(this).attr('data-filter'); 232 233 try { 234 $container.isotope({ 235 filter : selector, 236 animationOptions: { 237 duration: 500, 238 easing : 'linear', 239 queue : false 240 } 241 });
242 } catch(err) { 243 244 } 245 return false; 246 }); 247 248 249 winDow.on('resize', function(){ 250 var selector = $filter.find('li.active').attr('data-filter'); 251 252 $container.isotope({ 253 filter : selector, 254 animationOptions: { 255 duration: 500, 256 easing : 'linear', 257 queue : false 258 } 259 }); 260 }); 261 262 263 var filterItemA = $('.filter-btns li'); 264 265 filterItemA.on('click', function(){ 266 var $this = $(this); 267 if ( !$this.hasClass('active')) { 268 filterItemA.removeClass('active'); 269 $this.addClass('active'); 270 } 271 }); 272 } 273 } 274 275 enableMasonry(); 276 277 278 // Progress Bar 279 if ($('.count-bar').length) { 280 $('.count-bar').appear(function(){ 281 var el = $(this); 282 var percent = el.data('percent'); 283 $(el).css('width',percent).addClass('counted'); 284 },{accY: -50}); 285 286 } 287 288 289 290 /* ========================================================================== 291 When document is Scrollig, do 292 ========================================================================== */ 293 294 $(window).on('scroll', function() { 295 headerStyle(); 296 }); 297 298 299 300 /* ========================================================================== 301 When document is loaded, do 302 ========================================================================== */ 303 304 $(window).on('load', function() { 305 handlePreloader(); 306 enableMasonry(); 307 }); 308 309 310 311})(window.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.