(function($) { "use strict"; /*------------------------------------------ = all essential functions -------------------------------------------*/ // toggle mobile navigation function togglemobilenavigation() { var navbar = $(".navigation-holder"); var openbtn = $(".navbar-header .open-btn"); var closebtn = $(".navigation-holder .close-navbar"); var body = $(".page-wrapper"); openbtn.on("click", function() { if (!navbar.hasclass("slideinn")) { navbar.addclass("slideinn"); body.addclass("body-overlay"); } return false; }) closebtn.on("click", function() { if (navbar.hasclass("slideinn")) { navbar.removeclass("slideinn"); } body.removeclass("body-overlay"); return false; }) } togglemobilenavigation(); // function for toggle class for small menu function toggleclassforsmallnav() { var windowwidth = window.innerwidth; var mainnav = $("#navbar > ul"); if (windowwidth <= 991) { mainnav.addclass("small-nav"); } else { mainnav.removeclass("small-nav"); } } toggleclassforsmallnav(); // function for small menu function smallnavfunctionality() { var windowwidth = window.innerwidth; var mainnav = $(".navigation-holder"); var smallnav = $(".navigation-holder > .small-nav"); var submenu = smallnav.find(".sub-menu"); var megamenu = smallnav.find(".mega-menu"); var menuitemwidthsubmenu = smallnav.find(".menu-item-has-children > a"); if (windowwidth <= 991) { submenu.hide(); megamenu.hide(); menuitemwidthsubmenu.on("click", function(e) { var $this = $(this); $this.siblings().slidetoggle(); e.preventdefault(); e.stopimmediatepropagation(); }) } else if (windowwidth > 991) { mainnav.find(".sub-menu").show(); mainnav.find(".mega-menu").show(); } } smallnavfunctionality(); // parallax background function bgparallax() { if ($(".parallax").length) { $(".parallax").each(function() { var height = $(this).position().top; var resize = height - $(window).scrolltop(); var doparallax = -(resize/5); var positionvalue = doparallax + "px"; var img = $(this).data("bg-image"); $(this).css({ backgroundimage: "url(" + img + ")", backgroundposition: "50%" + positionvalue, backgroundsize: "cover" }); }); } } // hero slider var menu = []; jquery('.swiper-slide').each( function(index){ menu.push( jquery(this).find('.slide-inner').attr("data-text") ); }); var interleaveoffset = 0.5; var swiperoptions = { loop: true, speed: 1000, parallax: true, autoplay: { delay: 6500, disableoninteraction: false, }, watchslidesprogress: true, pagination: { el: '.swiper-pagination', clickable: true, }, navigation: { nextel: '.swiper-button-next', prevel: '.swiper-button-prev', }, on: { progress: function() { var swiper = this; for (var i = 0; i < swiper.slides.length; i++) { var slideprogress = swiper.slides[i].progress; var inneroffset = swiper.width * interleaveoffset; var innertranslate = slideprogress * inneroffset; swiper.slides[i].queryselector(".slide-inner").style.transform = "translate3d(" + innertranslate + "px, 0, 0)"; } }, touchstart: function() { var swiper = this; for (var i = 0; i < swiper.slides.length; i++) { swiper.slides[i].style.transition = ""; } }, settransition: function(speed) { var swiper = this; for (var i = 0; i < swiper.slides.length; i++) { swiper.slides[i].style.transition = speed + "ms"; swiper.slides[i].queryselector(".slide-inner").style.transition = speed + "ms"; } } } }; var swiper = new swiper(".swiper-container", swiperoptions); // data background image var sliderbgsetting = $(".slide-bg-image"); sliderbgsetting.each(function(indx){ if ($(this).attr("data-background")){ $(this).css("background-image", "url(" + $(this).data("background") + ")"); } }); /*------------------------------------------ = hide preloader -------------------------------------------*/ function preloader() { if($('.preloader').length) { $('.preloader').delay(100).fadeout(500, function() { //active wow wow.init(); }); } } /*------------------------------------------ = wow animation setting -------------------------------------------*/ var wow = new wow({ boxclass: 'wow', // default animateclass: 'animated', // default offset: 0, // default mobile: true, // default live: true // default }); /*------------------------------------------ = active popup image -------------------------------------------*/ if ($(".fancybox").length) { $(".fancybox").fancybox({ openeffect : "elastic", closeeffect : "elastic", wrapcss : "project-fancybox-title-style" }); } /*------------------------------------------ = popup video -------------------------------------------*/ if ($(".video-btn").length) { $(".video-btn").on("click", function(){ $.fancybox({ href: this.href, type: $(this).data("type"), 'title' : this.title, helpers : { title : { type : 'inside' }, media : {} }, beforeshow : function(){ $(".fancybox-wrap").addclass("gallery-fancybox"); } }); return false }); } /*------------------------------------------ = active gallery popup image -------------------------------------------*/ if ($(".popup-gallery").length) { $('.popup-gallery').magnificpopup({ delegate: 'a', type: 'image', gallery: { enabled: true }, zoom: { enabled: true, duration: 300, easing: 'ease-in-out', opener: function(openerelement) { return openerelement.is('img') ? openerelement : openerelement.find('img'); } } }); } /*------------------------------------------ = function form sorting gallery -------------------------------------------*/ function sortinggallery() { if ($(".sortable-gallery .gallery-filters").length) { var $container = $('.gallery-container'); $container.isotope({ filter:'*', animationoptions: { duration: 750, easing: 'linear', queue: false, } }); $(".gallery-filters li a").on("click", function() { $('.gallery-filters li .current').removeclass('current'); $(this).addclass('current'); var selector = $(this).attr('data-filter'); $container.isotope({ filter:selector, animationoptions: { duration: 750, easing: 'linear', queue: false, } }); return false; }); } } sortinggallery(); /*------------------------------------------ = masonry gallery setting -------------------------------------------*/ function masonrygridsetting() { if ($('.masonry-gallery').length) { var $grid = $('.masonry-gallery').masonry({ itemselector: '.grid-item', columnwidth: '.grid-item', percentposition: true }); $grid.imagesloaded().progress( function() { $grid.masonry('layout'); }); } } // masonrygridsetting(); /*------------------------------------------ = sticky header -------------------------------------------*/ // function for clone an element for sticky menu function clonenavforsticymenu($ele, $newelmclass) { $ele.addclass('original').clone().insertafter($ele).addclass($newelmclass).removeclass('original'); } // clone home style 1 navigation for sticky menu if ($('.site-header .navigation').length) { clonenavforsticymenu($('.site-header .navigation'), "sticky-header"); } var lastscrolltop = ''; function stickymenu($targetmenu, $toggleclass) { var st = $(window).scrolltop(); var mainmenutop = $('.site-header .navigation'); if ($(window).scrolltop() > 1000) { if (st > lastscrolltop) { // hide sticky menu on scroll down $targetmenu.removeclass($toggleclass); } else { // active sticky menu on scroll up $targetmenu.addclass($toggleclass); } } else { $targetmenu.removeclass($toggleclass); } lastscrolltop = st; } /*------------------------------------------ = function form sorting gallery -------------------------------------------*/ function sortinggallery() { if ($(".sortable-grids .grids-filters").length) { var $container = $('.grids-container'); $container.isotope({ filter:'*', animationoptions: { duration: 750, easing: 'linear', queue: false, } }); $(".grids-filters li a").on("click", function() { $('.grids-filters li .current').removeclass('current'); $(this).addclass('current'); var selector = $(this).attr('data-filter'); $container.isotope({ filter:selector, animationoptions: { duration: 750, easing: 'linear', queue: false, } }); return false; }); } } sortinggallery(); /*------------------------------------------ = masonry gallery setting -------------------------------------------*/ function masonrygridsetting() { if ($('.masonry-gallery').length) { var $grid = $('.masonry-gallery').masonry({ itemselector: '.grid-item', columnwidth: '.grid-item', percentposition: true }); $grid.imagesloaded().progress( function() { $grid.masonry('layout'); }); } } // masonrygridsetting(); /*------------------------------------------ = header search area -------------------------------------------*/ if ($(".header-search-area").length) { var serachformbox = $(".header-search-area .header-search-form"); var openseachbtn = $(".header-search-area .open-btn"); $(document.body).append(serachformbox); serachformbox.hide(); openseachbtn.on("click", function(e) { serachformbox.fadein(); return false; }); serachformbox.on("click", function() { serachformbox.fadeout(); return false; }).find(".form").on("click", function(e) { e.stoppropagation(); }) } /*------------------------------------------ = progress bar -------------------------------------------*/ function progressbar() { if ($(".progress-bar").length) { var $progress_bar = $('.progress-bar'); $progress_bar.appear(); $(document.body).on('appear', '.progress-bar', function() { var current_item = $(this); if (!current_item.hasclass('appeared')) { var percent = current_item.data('percent'); current_item.css('width', percent + '%').addclass('appeared').parent().append('' + percent + '%' + ''); } }); }; } progressbar(); /*------------------------------------------ = funfact -------------------------------------------*/ if ($(".odometer").length) { $('.odometer').appear(); $(document.body).on('appear', '.odometer', function(e) { var odo = $(".odometer"); odo.each(function() { var countnumber = $(this).attr("data-count"); $(this).html(countnumber); }); }); } /*------------------------------------------ = service slider -------------------------------------------*/ if ($(".about-slider").length) { $(".about-slider").owlcarousel({ smartspeed: 300, margin: 20, loop:true, autoplayhoverpause:true, dots: true, responsive: { 0 : { items: 1 }, 650 : { items: 2 }, 320 : { items: 2 } } }); } /*------------------------------------------ = team slider -------------------------------------------*/ if ($(".team-slider").length) { $(".team-slider").owlcarousel({ loop:true, // margin: 30, dots: false, nav: true, navtext: ['',''], smartspeed: 500, responsive:{ 0 : { items: 1, }, 550 : { items: 2, center: false, margin: 10 }, 892:{ items:3 }, 1200:{ items:4 }, 1400:{ items:5 } } }); } /*------------------------------------------ = portfolio slider -------------------------------------------*/ if ($(".portfolio-slider").length) { $(".portfolio-slider").owlcarousel({ autoplay: false, smartspeed: 300, margin: 0, loop:true, autoplayhoverpause:true, dots: false, responsive: { 0 : { items: 1 }, 500 : { items: 2 }, 768 : { items: 3 }, 1200 : { items: 4 }, 1400 : { items: 5 } } }); } /*------------------------------------------ = partners slider -------------------------------------------*/ if ($(".partners-slider").length) { $(".partners-slider").owlcarousel({ autoplay:true, smartspeed: 300, margin: 30, loop:true, autoplayhoverpause:true, dots: false, responsive: { 0 : { items: 2 }, 550 : { items: 3 }, 992 : { items: 4 }, 1200 : { items: 5 } } }); } /*------------------------------------------ = testimonial slider -------------------------------------------*/ if ($(".testimonial-slider").length) { $(".testimonial-slider").owlcarousel({ items: 1, loop:true, margin:30, smartspeed: 500, responsive: { 0 : { items: 1 }, 550 : { items: 1 }, 992 : { items: 2 }, 1200 : { items: 2 } } }); } /*------------------------------------------ = portfolio slider s2 -------------------------------------------*/ if ($(".portfolio-slider-s2").length) { $(".portfolio-slider-s2").owlcarousel({ autoplay: false, smartspeed: 300, margin: 0, loop:true, autoplayhoverpause:true, dots: false, responsive: { 0 : { items: 1 }, 500 : { items: 2 }, 768 : { items: 3 } } }); } /*------------------------------------------ = home 1 projects slider -------------------------------------------*/ if ($(".featured-projects-slider").length) { $(".featured-projects-slider").owlcarousel({ margin: 5, dots: false, mousedrag: false, nav: true, navtext: ['',''], navspeed: 1000, smartspeed: 1000, responsive: { 0 : { items: 1 }, 530 : { items: 2 }, 992 : { items: 3 }, 1200 : { items: 4 }, 1400 : { items: 5 } } }); } /*------------------------------------------ = post slider -------------------------------------------*/ if($(".post-slider".length)) { $(".post-slider").owlcarousel({ mousedrag: false, smartspeed: 500, margin: 30, loop:true, nav: true, navtext: ['',''], dots: false, items: 1 }); } /*------------------------------------------ = rsvp form submission -------------------------------------------*/ if ($("#contact-form-main").length) { $("#contact-form-main").validate({ rules: { name: { required: true, minlength: 2 }, email: "required", phone: "required", }, messages: { name: "please enter your name", email: "please enter your email address", phone: "please enter your phone number", }, submithandler: function (form) { $.ajax({ type: "post", url: "mail-contact.php", data: $(form).serialize(), success: function () { $( "#loader").hide(); $( "#success").slidedown( "slow" ); settimeout(function() { $( "#success").slideup( "slow" ); }, 3000); form.reset(); }, error: function() { $( "#loader").hide(); $( "#error").slidedown( "slow" ); settimeout(function() { $( "#error").slideup( "slow" ); }, 3000); } }); return false; // required to block normal submit since you used ajax } }); } /*------------------------------------------ = back to top btn setting -------------------------------------------*/ $(".site-footer").append(""); $(".back-to-top").on("click", function() { $("html,body").animate({ scrolltop: 0 }, 700); return false; }) /*========================================================================== when document loading ==========================================================================*/ $(window).on('load', function() { preloader(); togglemobilenavigation(); smallnavfunctionality(); }); /*========================================================================== when window scroll ==========================================================================*/ $(window).on("scroll", function() { if ($(".site-header").length) { stickymenu( $('.site-header .navigation'), "sticky-on" ); } }); /*========================================================================== when window resize ==========================================================================*/ $(window).on("resize", function() { toggleclassforsmallnav(); cleartimeout($.data(this, 'resizetimer')); $.data(this, 'resizetimer', settimeout(function() { smallnavfunctionality(); }, 200)); }); })(window.jquery);