PageSourceSearch

https://www.inicis.com/wp-content/themes/inicis2020/assets/js/functions.js

js inicis.com collected 2026-10-02 03:02:35 UTC 14,323 bytes, 393 lines download raw bytes

1/* ===================
2    Table Of Content
3======================
401 PRELOADER
502 COUNTER
603 PORTFOLIO ISOTOPE
704 WOW
805 OWL CAROUSEL
906 SWIPER SLIDER
1007 BACK TO TOP
1108 STICKY BAR
1209 STICKY HEADER
1310 FIT VIDEO
1411 PARALLAX
1512 WAVE
1613 CONTACT FORM
1714 IE DETECTION
1815 MEGA MENU
19
20======================*/
21(function ($) {
22"use strict";
23
24
25    // BEGIN: 01 Preloader
26    var preLoader = function() {
27        if($('.preloader').length){
28            var $preloader = $('.preloader');
29            $preloader.delay(200).fadeOut(600);
30        }
31    };
32    // END: Preloader
33
34    // BEGIN: 02 Counter
35    var CountTo = function () {
36        var initInstances = function () {
37          var $count = $('.counter-item-digit');
38          if($count.length) {
39            $count.appear(function (direction) {
40                $(this).countTo();
41            }, {
42                offset: '100%',
43                triggerOnce: true
44            });
45          }
46        };
47
48        return {
49            init: function () {
50                initInstances();
51            }
52        };
53    }();
54    // END: Counter
55
56    // BEGIN: 03 Portfolio Isotope
57    var portfolioIsotope = function() {
58        if ( $().isotope ) {
59            var $container = $('.portfolio-wrap');
60            $container.imagesLoaded(function(){
61                $container.isotope({
62                    itemSelector: '.isotope-item',
63                    transitionDuration: '0.5s',
64                });
65            });
66            $('.nav-tabs .nav-filter').on('click',function() {
67                var selector = $(this).attr('data-filter');
68                $('.nav-tabs .nav-filter').removeClass('active');
69                $(this).addClass('active');
70                $container.isotope({ filter: selector });
71                return false;
72            });
73        }
74    };
75    // END: Portfolio Isotope
76
77    // BEGIN: 04 Wow
78    var wow = function() {
79        if($('.wow').length){
80            wow = new WOW( {
81                mobile: true  // Turn on/off WOW.js on mobile devices.
82            }).init();
83        }
84    };
85    // END: Wow Js
86
87    // BEGIN: 05 Owl Carousel
88    var owlCarousel = function() {
89        var $carousel = $('.owl-carousel');
90        if( $carousel.length < 1 ){
91            return true;
92        }
93        $carousel.each( function(){
94            var slider = $(this);
95            var sliderArrow = slider.attr('data-arrow') == 'false' ? false : true; //option: true or false
96            var sliderDots = slider.attr('data-dots') == 'false' ? false :true; //option: true or false
97            var sliderAutoPlay = slider.attr('data-autoplay') ? slider.attr('data-autoplay') : false; //option: number in ms
98            var sliderAutoPlayTime = slider.attr('data-autoplay') ? Number(sliderAutoPlay) : 4000;
99            var sliderSpeed = slider.attr('data-speed') ? slider.attr('data-speed') : 800; //option: number in ms (Smart speed)
100            var sliderMargin = slider.attr('data-margin') ? slider.attr('data-margin') : 30; //option: number in px
101            var sliderLoop = slider.attr('data-loop') == 'false' ? false : true; //option: true or false
102            var sliderStart = slider.attr('data-start') ? slider.attr('data-start') : 0; //option: number
103            var sliderSlideBy = slider.attr('data-slideby') ? sliderSlideBy == 'page' ? 'page' : Number(slider.attr('data-slideby')) : Number(1); //option: number
104            var sliderHoverPause = slider.attr('data-pause') == 'false' ? false : true; //option: true or false
105            var sliderMerge = slider.attr('data-merge') == 'true' ? true : false; //option: number (use in slider items DIV)
106            var sliderDrag = slider.attr('data-drag') == 'false' ? false : true; //option: true or false
107            var sliderRewind = slider.attr('data-rewind') == 'true' ? true : false; //option: true or false
108            var sliderCenter = slider.attr('data-center') == 'true' ? true : false; //option: true or false
109            var sliderVideo = slider.attr('data-video') == 'true' ? true : false; //option: true or false
110            var sliderLazy = slider.attr('data-lazyload') == 'true' ? true : false; //option: true or false
111            var sliderRTL = slider.attr('data-rtl'); //option: true (false by default)
112            var sliderItems = slider.attr('data-items') ? slider.attr('data-items') : 4; //option: number (items in all device)
113            var sliderItemsXl = slider.attr('data-items-xl')? slider.attr('data-items-xl') 
113: Number(sliderItems) ; //option: number (items in 1200 to end )
114            var sliderItemsLg = slider.attr('data-items-lg')? slider.attr('data-items-lg') : Number(sliderItemsXl) ; //option: number (items in 992 to 1199 )
115            var sliderItemsMd = slider.attr('data-items-md')? slider.attr('data-items-md') : Number(sliderItemsLg) ; //option: number (items in 768 to 991 )
116            var sliderItemsSm = slider.attr('data-items-sm')? slider.attr('data-items-sm') : Number(sliderItemsMd) ; //option: number (items in 576 to 767 )
117            var sliderItemsXs = slider.attr('data-items-xs') ? slider.attr('data-items-xs') : Number(sliderItemsSm) ; //option: number (items in start to 575 )
118            slider.owlCarousel({
119                margin: Number(sliderMargin),
120                loop: sliderLoop,
121                merge: sliderMerge,
122                mouseDrag: sliderDrag,
123                startPosition: Number(sliderStart),
124                rewind: sliderRewind,
125                slideBy: sliderSlideBy,
126                center: sliderCenter,
127                lazyLoad: sliderLazy,
128                nav: sliderArrow,
129                navText: [
130                            '<i class="ti-angle-left"></i>',
131                            '<i class="ti-angle-right"></i>'
132                ],
133                autoplay: sliderAutoPlay,
134                autoplayTimeout: sliderAutoPlayTime,
135                autoplayHoverPause: sliderHoverPause,
136                dots: sliderDots,
137                smartSpeed: Number(sliderSpeed),
138                video: sliderVideo,
139                rtl: sliderRTL,
140                responsive:{
141                   0:{ items:Number(sliderItemsXs) },
142                  576:{ items:Number(sliderItemsSm) },
143                  768:{ items:Number(sliderItemsMd) },
144                  992:{ items:Number(sliderItemsLg) },
145                  1200:{ items:Number(sliderItemsXl) }
146                },
147            });
148        });
149    };
150    // END: Owl Carousel
151
152    // BEGIN: 06 Swiper Slider
153    var swiperSlider = function() {
154        if($(".swiper-slider-fade").length !== 0) {
155            var swiper = new Swiper('.swiper-container', {
156                effect: 'fade', //other supported effects: coverflow, flip, cube, slide
157                pagination: null,
158                navigation: {
159                    nextEl: '.swiper-button-next',
160                    prevEl: '.swiper-button-prev',
161                },
162                nextButton: '.swiper-button-next',
163                prevButton: '.swiper-button-prev',
164                autoplay: 5000,
165                speed: 1000,
166                spaceBetween: 0,
167                loop: true,
168                simulateTouch: true,
169                onSlideChangeEnd: function(swiper) {
170                    $('.swiper-slide').each(function() {
171                        if ($(this).index() === swiper.activeIndex) {
172                            // Fadein in active slide
173                            $(this).find('.slider-content').fadeIn(25);
174                        } else {
175                            // Fadeout in inactive slides
176                            $(this).find('.slider-content').fadeOut(25);
177                        }
178                    });
179                }
180            });
181        }
182    };
183    // END: Swiper Slider
184
185    // BEGIN: 07 Back To top
186     var backTotop = function(){
187        var $backtotop = $('.back-top');
188        $(window).on('scroll', function() {
189            if ($(this).scrollTop() > 500) {
190                $backtotop.addClass('btn-show');
191            } else {
192                $backtotop.removeClass('btn-show');
193            }
194        });
195        $backtotop.on('click', function() {
196            $('html, body').animate({ scrollTop: 0}, 900, 'easeInOutCirc');
197            return false;
198        });
199    };
200    // END: Back To top
201
202    // BEGIN: 08 Sticky bar
203    var stickyBar = function() {
204
205        if($(".sticky-element").length) {
206          var $stickyElement = $(".sticky-element");
207          if ($(window).width() <= 1024) {
208              $stickyElement.trigger('sticky_kit:detach');
209          }
210          else {
211              $stickyElement.stick_in_parent({
212                  offset_top: 100
213              });
214          }
215        }
216    };
217    // END: Sticky bar
218
219    // BEGIN: Sticky Header
220    var stickyHeader = function() {
221        var sticky = $('.navbar-sticky'),
222        stickyStatic = $('.header-static');
223            $(window).scroll(function () {
224                var scTop = $(document).scrollTop();
225                if (scTop > 400) {
226                    if (!$(".sticky-space").length) {
227                        stickyStatic.after('<div class="sticky-space"></div>');
228                        $(".sticky-space").css({'height': sticky.height() + 'px'});
229                    }
230                    sticky.addClass('navbar-sticky-on');
231                } 
232                else {
233                    $(".sticky-space").remove();
234                    sticky.removeClass('navbar-sticky-on');
235            }
236        });
237    };
238    // END: Sticky Header
239
240    // BEGIN: 10 Fit Video
241    var fullWithvideo = function(){
242        // Target your .container, .wrapper, .post, etc.
243        if($(".fit-video").length){
244            var $fitvideo = $(".fit-video");
245            $fitvideo.fitVids();
246        }
247      };
248    // END: Fit Video
249
250    // BEGIN: 11 Parallax
251    var jarallax = function(){
252	    if($('.parallax-bg').length){
253	        $('.parallax-bg').jarallax({
254	            speed: 0.5
255	        });
256	    }
257    };
258    // END: Parallax
259
260    // BEGIN: 12 wave
261    var myWave  = function(){
262        if($('#wave-one').length){
263          var wave_one = $('#wave-one');
264          wave_one.wavify({
265                  height: 60,
266                  bones: 5,
267                  amplitude: 20,
268                  color: '#fff',
269                  speed: .15
270          });
271        }
272        if($('#wave-two').length){
273          var wave_two = $('#wave-two');
274          wave_two.wavify({
275                height: 40,
276                bones: 4,
277                amplitude: 20,
278                color: 'rgba(255, 255, 255, .8)',
279                speed: .25
280            });
281        }
282    };
283    // End: wave
284
285    // BEGIN: 13 Contact Form
286    var form = $('.contact-form');
287    var message = $('.contact-msg');
288    var form_data;
289    // Success function
290    function done_func(response) {
291        message.fadeIn().removeClass('alert-danger').addClass('alert-success');
292        message.text(response);
293        setTimeout(function () {
294            message.fadeOut();
295        }, 50000);
296        form.find('input:not([type="submit"]), textarea').val('');
297    }
298    // fail function
299    function fail_func(data) {
300            message.fadeIn().removeClass('alert-success').addClass('alert-danger');
301            message.text(data.responseText);
302            setTimeout(function () {
303                message.fadeOut();
304            }, 5000);
305        }
306    form.submit(function (e) {
307            e.preventDefault();
308            form_data = $(this).serialize();
309            $.ajax({
310                type: 'POST',
311                url: form.attr('action'),
312                data: form_data
313            })
314            .done(done_func)
315            .fail(fail_func);
316        });
317    // END: Contact Form
318
319    // BEGIN: 14 IE Detection
320    /**
321     * detect IE
322     * returns version of IE or false, if browser is not Internet Explorer
323     */
324    (function detectIE() {
325        var ua = window.navigator.userAgent;
326
327        var msie = ua.indexOf('MSIE ');
328        if (msie > 0) {
329            // IE 10 or older => return version number
330            var ieV = parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);
331            document.querySelector('body').className += ' ie-browser';
332        }
333
334        var trident = ua.indexOf('Trident/');
335        if (trident > 0) {
336            // IE 11 => return version number
337            var rv = ua.indexOf('rv:');
338            var ieV = parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);
339            document.querySelector('body').className += ' ie-browser';
340        }
341
342        var edge = ua.indexOf('Edge/');
343        if (edge > 0) {
344           // IE 12 (aka Edge) => return version number
345           var ieV = parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);
346            document.querySelector('body').className += ' ie-browser';
347        }
348
349        // other browser
350        return false;
351    })();
352    // END: IE Detection
353
354    // BEGIN: 15 Mega Menu
355    $('.dropdown-menu a.dropdown-toggle').on('click', function(e) {
356        if (!$(this).next().hasClass('show')) {
357          $(this).parents('.dropdown-menu').first().find('.show').removeClass("show");
358        }
359        var $subMenu = $(this).next(".dropdown-menu");
360        $subMenu.toggleClass('show');
361
362        $(this).parents('li.nav-item.dropdown.show').on('hidden.bs.dropdown', function(e) {
363          $('.dropdown-submenu .show').removeClass("show");
364        });
365
366        return false;
367    });
368
369    // END: Mega Menu
370
371    // Initialze all functions
372
373    $(window).on('scroll', function (){
374      stickyBar();
375    }).on('load', function() {
376      preLoader();
377    });
378
379    //Document ready functions
380    $(document).ready(function () {
381          stickyHeader();
382          CountTo.init();
383          portfolioIsotope();
384          owlCarousel();
385          swiperSlider();
386          wow();
387          backTotop();
388          fullWithvideo();
389          jarallax();
390          myWave();
391    });
392
393})(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.