(function($){ "use strict"; $(window).load(function() { // Preloader $('.loader').fadeOut(); $('.loader-mask').delay(350).fadeOut('slow'); $(window).trigger("resize"); }); $(document).ready(function(){ $(window).trigger("resize"); initOwlCarousel(); initTextrotator(); initMasonry(); }); /* Sticky Navigation -------------------------------------------------------*/ $(window).scroll(function(){ if ($(window).scrollTop() > 1 && $('.navbar-toggle').is(":hidden")){ $('.navigation-overlay, .navigation, .nav-type-2').addClass("sticky"); $('.logo-wrap').addClass("shrink"); } else { $('.navigation-overlay, .navigation, .nav-type-2').removeClass("sticky"); $('.logo-wrap').removeClass("shrink"); } }); /* Full Height Container / Dropdowns -------------------------------------------------------*/ $(window).resize(function(){ container_full_height_init(); initMasonry(); var windowWidth = $(window).width(); if (windowWidth <= 974) { $('.dropdown-toggle').attr('data-toggle', 'dropdown'); $('.navigation').removeClass("sticky offset scrolling"); $('.nav-type-2').removeClass("sticky"); } if (windowWidth > 974) { $('.dropdown-toggle').removeAttr('data-toggle', 'dropdown'); $('.dropdown').removeClass('open'); } /* Mobile Menu Resize -------------------------------------------------------*/ $(".navbar .navbar-collapse").css("max-height", $(window).height() - $(".navbar-header").height() ); }); // Closes the Responsive Menu on Menu Item Click $('.navigation-overlay .navbar-collapse ul li a').on('click',function() { $('.navbar-toggle:visible').click(); }); // Smooth Scroll Navigation $('.local-scroll').localScroll({offset: {top: -60},duration: 1500,easing:'easeInOutExpo'}); /* Search -------------------------------------------------------*/ $('.search-trigger').on('click',function(e){ e.preventDefault(); $('.search-wrap').animate({opacity: 'toggle'},500); $('.nav-search').addClass("open"); $('.search-wrap .form-control').focus(); }); $('.search-close').on('click',function(e){ e.preventDefault(); $('.search-wrap').animate({opacity: 'toggle'},500); $('.nav-search').removeClass("open"); }); function closeSearch(){ $('.search-wrap').fadeOut(200); $('.nav-search').removeClass("open"); } $(document.body).on('click',function(e) { closeSearch(); }); $(".search-wrap, .search-trigger").on('click',function(e) { e.stopPropagation(); }); /* Bootstrap Dropdown Navigation -------------------------------------------------------*/ "use strict";!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){function b(b){this.$element=a(b),this.$main=this.$element.closest(".dropdown, .dropup, .btn-group"),this.$menu=this.$element.parent(),this.$drop=this.$menu.parent().parent(),this.$menus=this.$menu.siblings(".dropdown-submenu");var d=this.$menu.find("> .dropdown-menu > "+c);this.$submenus=d.filter(".dropdown-submenu"),this.$items=d.not(".dropdown-submenu"),this.init()}var c=":not(.disabled, .divider, .dropdown-header)";return b.prototype={init:function(){this.$element.on({"click.bs.dropdown":this.click.bind(this),keydown:this.keydown.bind(this)}),this.$menu.on("hide.bs.submenu",this.hide.bind(this)),this.$items.on("keydown",this.item_keydown.bind(this)),this.$menu.nextAll(c+":first:not(.dropdown-submenu)").children("a").on("keydown",this.next_keydown.bind(this))},click:function(a){a.stopPropagation(),this.toggle()},toggle:function(){this.$menu.hasClass("open")?this.close():(this.$menu.addClass("open"),this.$menus.trigger("hide.bs.submenu"))},hide:function(a){a.stopPropagation(),this.close()},close:function(){this.$menu.removeClass("open"),this.$submenus.trigger("hide.bs.submenu")},keydown:function(a){if(/^(32|38|40)$/.test(a.keyCode)&&a.preventDefault(),/^(13|32)$/.test(a.keyCode))this.toggle();else if(/^(27|38|40)$/.test(a.keyCode))if(a.stopPropagation(),27==a.keyCode)this.$menu.hasClass("open")?this.close():(this.$menus.trigger("hide.bs.submenu"),this.$drop.removeClass("open").children("a").trigger("focus"));else{var b=this.$main.find("li:not(.disabled):visible > a"),c=b.index(a.target);if(38==a.keyCode&&0!==c)c--;else{if(40!=a.keyCode||c===b.length-1)return;c++}b.eq(c).trigger("focus")}},item_keydown:function(a){27==a.keyCode&&(a.stopPropagation(),this.close(),this.$element.trigger("focus"))},next_keydown:function(a){if(38==a.keyCode){a.preventDefault(),a.stopPropagation();var b=this.$drop.find("li:not(.disabled):visible > a"),c=b.index(a.target);b.eq(c-1).trigger("focus")}}},a.fn.submenupicker=function(c){var d=this instanceof a?this:a(c);return d.each(function(){var c=a.data(this,"bs.submenu");c||(c=new b(this),a.data(this,"bs.submenu",c))})}}); $('.dropdown-submenu > a').submenupicker(); /* Mobile Navigation -------------------------------------------------------*/ $('.dropdown-toggle').on('click', function(e){ e.preventDefault(); }); /* IE Detect -------------------------------------------------------*/ if(Function('/*@cc_on return document.documentMode===10@*/')()){ $("html").addClass("ie"); } /* Text Rotator -------------------------------------------------------*/ function initTextrotator(){ $(".rotate").textrotator({ animation: "dissolve", // You can pick the way it animates when rotating through words. Options are dissolve (default), fade, flip, flipUp, flipCube, flipCubeUp and spin. separator: ",", speed: 3000 }); } /* Mobile Detect -------------------------------------------------------*/ if (/Android|iPhone|iPad|iPod|BlackBerry|Windows Phone/i.test(navigator.userAgent || navigator.vendor || window.opera)) { $("html").addClass("mobile"); $('.dropdown-toggle').attr('data-toggle', 'dropdown'); } else { $("html").removeClass("mobile"); } /* Isotope Filter -------------------------------------------------------*/ $('.portfolio-filter').on( 'click', 'a', function(e) { e.preventDefault(); var filterValue = $(this).attr('data-filter'); $container.isotope({ filter: filterValue }); $('.portfolio-filter a').removeClass('active'); $(this).closest('a').addClass('active'); }); /* Portfolio -------------------------------------------------------*/ var $container = $('.works-grid'); $container.imagesLoaded( function() { $container.isotope({ itemSelector: '.work-item', layoutMode: 'fitRows', percentPosition: true, masonry: { columnWidth: '.work-img' } }); }); /* Masonry -------------------------------------------------------*/ function initMasonry(){ var $masonry = $('.masonry-grid'); $masonry.imagesLoaded( function() { $masonry.isotope({ itemSelector: '.work-item', layoutMode: 'masonry', percentPosition: true, masonry: { columnWidth: '.work-item.quarter' } }); }); } /* Counters -------------------------------------------------------*/ $('.statistic').appear(function() { $('.timer').countTo({ speed: 4000, refreshInterval: 60, formatter: function (value, options) { return value.toFixed(options.decimals); } }); }); /* Progress Bars -------------------------------------------------------*/ var $section = $('#animated-skills').appear(function() { function loadDaBars() { var bar = $('.progress-bar'); var bar_width = $(this); $(function(){ $(bar).each(function(){ bar_width = $(this).attr('aria-valuenow'); $(this).width(bar_width + '%'); }); }); } loadDaBars(); }); /* Pie Charts -------------------------------------------------------*/ $(function() { $('.chart').appear(function() { $('.chart').easyPieChart({ animate:{ duration:1500, enabled:true }, scaleColor:false, trackColor:'#f7f9fa', lineWidth: 5, size: 180, lineCap: 'square', onStep: function(from, to, percent) { $(this.el).find('.percent').text(Math.round(percent)); } }); var chart = window.chart = $('.chart').data('easyPieChart'); $('.js_update').on('click', function() { chart.update(Math.random()*200-100); }); }); }); /* Accordion -------------------------------------------------------*/ function toggleChevron(e) { $(e.target) .prev('.panel-heading') .find("a") .toggleClass('plus minus'); } $('#accordion').on('hide.bs.collapse', toggleChevron); $('#accordion').on('show.bs.collapse', toggleChevron); /* Lightbox popup -------------------------------------------------------*/ $('.lightbox-gallery').magnificPopup({ type: 'image', tLoading: 'Loading image #%curr%...', gallery: { enabled: true, navigateByImgClick: true, preload: [0,1] }, image: { titleSrc: 'title', verticalFit: true } }); $(".lightbox-video").magnificPopup(); /* Owl Carousel -------------------------------------------------------*/ function initOwlCarousel(){ (function($){ "use strict"; $("#owl-partners").owlCarousel({ autoPlay: 3000, pagination: false, itemsCustom: [ [0, 2], [450, 2], [700, 3], [1000, 3], [1200, 4], [1400, 5], [1600, 6] ], }) $("#owl-featured-works").owlCarousel({ pagination: false, itemsCustom: [ [0, 1], [550, 2], [700, 2], [850, 3], [1000, 3], [1200, 4], [1600, 5] ], }) // Owl Single $("#owl-single").owlCarousel({ slideSpeed: 300, singleItem: true, paginationSpeed: 200, pagination: true, paginationNumbers: true }); // Promo Section var owlPromo = $("#owl-promo"); owlPromo.owlCarousel({ slideSpeed: 300, pagination: false, paginationSpeed: 400, singleItem: true }); // Blog Gallery Post var owlBlog = $("#owl-blog"); owlBlog.owlCarousel({ slideSpeed: 300, pagination: false, paginationSpeed: 400, itemsCustom: [ [0, 1], [450, 1], [1200, 2], ], }); var owlRelated = $("#owl-related-works"); owlRelated.owlCarousel({ slideSpeed: 300, paginationSpeed: 400, items: 3, itemsDesktop: [1199,3], itemsDesktopSmall: [979,3], pagination: false }); // Custom Navigation Events $(".next").on('click',function(){ owlPromo.trigger('owl.next'); owlBlog.trigger('owl.next'); owlRelated.trigger('owl.next'); }) $(".prev").on('click',function(){ owlPromo.trigger('owl.prev'); owlBlog.trigger('owl.prev'); owlRelated.trigger('owl.prev'); }); // Testimonials $("#owl-testimonials").owlCarousel({ navigation: false, slideSpeed: 300, pagination: true, paginationSpeed: 400, singleItem: true, autoPlay: false, stopOnHover: true }); // Owl Hero Slider $("#owl-slider-one-img").owlCarousel({ transitionStyle: "fadeUp", autoHeight: true, navigation: true, slideSpeed: 300, singleItem: true, navigationText: ["", ""] }); })(jQuery); }; /* Flexslider / Blog Masonry -------------------------------------------------------*/ $('.one-img-slide').flexslider({ animation: "slide", directionNav: true, touch: true, slideshow: false, prevText: [""], nextText: [""], start: function(){ var $container = $('.masonry'); $container.imagesLoaded( function() { $container.isotope({ itemSelector: '.masonry-item', layoutMode: 'masonry' }); }); } }); /* Wow Animations -------------------------------------------------------*/ var wow = new WOW({ offset: 50, mobile: false }); wow.init(); /* FitVIds -------------------------------------------------------*/ $(".video-wrap").fitVids(); /* ---------------------------------------------------------------------- */ /* Contact Form /* ---------------------------------------------------------------------- */ var submitContact = $('#submit-message'), message = $('#msg'); submitContact.on('click', function(e){ e.preventDefault(); var $this = $(this); $.ajax({ type: "POST", url: 'contact.php', dataType: 'json', cache: false, data: $('#contact-form').serialize(), success: function(data) { if(data.info !== 'error'){ $this.parents('form').find('input[type=text],input[type=email],textarea,select').filter(':visible').val(''); message.hide().removeClass('success').removeClass('error').addClass('success').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow'); } else { message.hide().removeClass('success').removeClass('error').addClass('error').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow'); } } }); }); })(jQuery); /* Scroll to Top -------------------------------------------------------*/ (function() { "use strict"; var docElem = document.documentElement, didScroll = false, changeHeaderOn = 550; document.querySelector( '#back-to-top' ); function init() { window.addEventListener( 'scroll', function() { if( !didScroll ) { didScroll = true; setTimeout( scrollPage, 50 ); } }, false ); } })(); $(window).scroll(function(event){ var scroll = $(window).scrollTop(); if (scroll >= 50) { $("#back-to-top").addClass("show"); } else { $("#back-to-top").removeClass("show"); } }); $('a[href="#top"]').on('click',function(){ $('html, body').animate({scrollTop: 0}, 'slow'); return false; }); /* Full Height Container -------------------------------------------------------*/ function container_full_height_init(){ (function($){ $(".container-full-height").height($(window).height()); })(jQuery); }