/*jshint jquery:true */ /*global $:true */ var $ = jQuery.noConflict(); $(document).ready(function($) { "use strict"; /*-------------------------------------------------*/ /* = portfolio isotope /*-------------------------------------------------*/ var winDow = $(window); // Needed variables var $container=$('.portfolio-container'); var $filter=$('.filter'); try{ $container.imagesLoaded( function(){ $container.show(); $container.isotope({ filter:'*', layoutMode:'masonry', animationOptions:{ duration:750, easing:'linear' } }); }); } catch(err) { } winDow.bind('resize', function(){ var selector = $filter.find('a.active').attr('data-filter'); try { $container.isotope({ filter : selector, animationOptions: { duration: 750, easing : 'linear', queue : false, } }); } catch(err) { } return false; }); // Isotope Filter $filter.find('a').click(function(){ var selector = $(this).attr('data-filter'); try { $container.isotope({ filter : selector, animationOptions: { duration: 750, easing : 'linear', queue : false, } }); } catch(err) { } return false; }); var filterItemA = $('.filter li a'); filterItemA.on('click', function(){ var $this = $(this); if ( !$this.hasClass('active')) { filterItemA.removeClass('active'); $this.addClass('active'); } }); /*-------------------------------------------------*/ /* = fullwidth carousell /*-------------------------------------------------*/ try { var fullCarousell = $("#owl-demo"); fullCarousell.owlCarousel({ navigation : true, afterInit : function(elem){ var that = this; that.owlControls.prependTo(elem); } }); } catch(err) { } /*-------------------------------------------------*/ /* = fullwidth carousell /*-------------------------------------------------*/ try { $.browserSelector(); // Adds window smooth scroll on chrome. if($("html").hasClass("chrome")) { $.smoothScroll(); } } catch(err) { } /*-------------------------------------------------*/ /* = Scroll to TOP /*-------------------------------------------------*/ var animateTopButton = $('.go-top'), htmBody = $('html, body'); animateTopButton.click(function(){ htmBody.animate({scrollTop: 0}, 'slow'); return false; }); /*-------------------------------------------------*/ /* = flexslider /*-------------------------------------------------*/ try { var SliderPost = $('.flexslider'); SliderPost.flexslider({ animation: "slide", slideshowSpeed: 3000, easing: "swing", direction: "vertical" }); } catch(err) { } /* ---------------------------------------------------------------------- */ /* Contact Map /* ---------------------------------------------------------------------- */ var contact = {"lat":"28.54621", "lon":"77.27221"}; //Change a map coordinate here! try { var mapContainer = $('.map'); mapContainer.gmap3({ action: 'addMarker', latLng: [contact.lat, contact.lon], map:{ center: [contact.lat, contact.lon], zoom: 14 }, }, {action: 'setOptions', args:[{scrollwheel:true}]} ); } catch(err) { } /* ---------------------------------------------------------------------- */ /* magnific-popup /* ---------------------------------------------------------------------- */ try { // Example with multiple objects $('.zoom').magnificPopup({ type: 'image' }); } catch(err) { } try { // Example with multiple objects $('.zoom.video').magnificPopup({ type: 'iframe' }); } catch(err) { } /* ---------------------------------------------------------------------- */ /* Accordion /* ---------------------------------------------------------------------- */ var clickElem = $('a.accord-link'); clickElem.on('click', function(e){ e.preventDefault(); var $this = $(this), parentCheck = $this.parents('.accord-elem'), accordItems = $('.accord-elem'), accordContent = $('.accord-content'); if( !parentCheck.hasClass('active')) { accordContent.slideUp(400, function(){ accordItems.removeClass('active'); }); parentCheck.find('.accord-content').slideDown(400, function(){ parentCheck.addClass('active'); }); } else { accordContent.slideUp(400, function(){ accordItems.removeClass('active'); }); } }); /* ---------------------------------------------------------------------- */ /* Tabs /* ---------------------------------------------------------------------- */ var clickTab = $('.tab-links li a'); clickTab.on('click', function(e){ e.preventDefault(); var $this = $(this), hisIndex = $this.parent('li').index(), tabCont = $('.tab-content'), tabContIndex = $(".tab-content:eq(" + hisIndex + ")"); if( !$this.hasClass('active')) { clickTab.removeClass('active'); $this.addClass('active'); tabCont.fadeOut(400); tabCont.removeClass('active'); tabContIndex.delay(400).fadeIn(400); tabContIndex.addClass('active'); } }); /*-------------------------------------------------*/ /* = slider Testimonial /*-------------------------------------------------*/ var slidertestimonial = $('.bxslider'); try{ slidertestimonial.bxSlider({ mode: 'vertical' }); } catch(err) { } /*-------------------------------------------------*/ /* = skills animate /*-------------------------------------------------*/ var animateElement = $(".meter > span"); animateElement.each(function() { $(this) .data("origWidth", $(this).width()) .width(0) .animate({ width: $(this).data("origWidth") }, 1200); }); /*-------------------------------------------------*/ /* = Shop accordion /*-------------------------------------------------*/ var AccordElement = $('a.accordion-link'); AccordElement.on('click', function(e){ e.preventDefault(); var elemSlide = $(this).parent('li').find('.accordion-list-content'); if( !$(this).hasClass('active') ) { $(this).addClass('active'); elemSlide.slideDown(200); } else { $(this).removeClass('active'); elemSlide.slideUp(200); } }); /*-------------------------------------------------*/ /* = price range code /*-------------------------------------------------*/ try { for( var i = 100; i <= 10000; i++ ){ $('#start-val').append( '' ); } // Initialise noUiSlider $('.noUiSlider').noUiSlider({ range: [0,1600], start: [0,1000], handles: 2, connect: true, step: 1, serialization: { to: [ $('#start-val'), $('#end-val') ], resolution: 1 } }); } catch(err) { } /*-------------------------------------------------*/ /* = Single page /*-------------------------------------------------*/ var windowHeight = $(window).height(); $('.home-box').css('height', windowHeight); $(window).resize(function(){ var windowHeight = $(window).height(); $('.home-box').css('height', windowHeight); }); /* ---------------------------------------------------------------------- */ /* Contact Form /* ---------------------------------------------------------------------- */ var submitContact = $('.submit_contact'); submitContact.on('click', function(e){ e.preventDefault(); var $this = $(this), message = $('.msg'); if ( !$this.hasClass('main-form') ){ $.ajax({ type: "POST", url: 'contact.php', dataType: 'json', cache: false, data: $('.contact-work-form').serialize(), success: function(data) { if(data.info !== 'error'){ $this.parents('form').find('input[type=text],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'); } } }); } else { message = $('.msg2'); $.ajax({ type: "POST", url: 'contact.php', dataType: 'json', cache: false, data: $('.contact-work-form2').serialize(), success: function(data) { if(data.info !== 'error'){ $this.parents('form').find('input[type=text],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'); } } }); } }); /* ---------------------------------------------------------------------- */ /* Header animate after scroll /* ---------------------------------------------------------------------- */ (function() { var docElem = document.documentElement, didScroll = false, changeHeaderOn = 200; document.querySelector( 'header' ); function init() { window.addEventListener( 'scroll', function() { if( !didScroll ) { didScroll = true; setTimeout( scrollPage, 250 ); } }, false ); } function scrollPage() { var sy = scrollY(); if ( sy >= changeHeaderOn ) { $( 'header' ).addClass('active'); } else { $( 'header' ).removeClass('active'); } didScroll = false; } function scrollY() { return window.pageYOffset || docElem.scrollTop; } init(); })(); });