0byt3m1n1-V2
Path:
/
home
/
yvffpqmy
/
public_html
/
new
/
wp-content
/
themes
/
consua
/
assets
/
js
/
[
Home
]
File: main.js
/* =================================================================== Author : Valid Theme Template Name : Consua - Consulting Business Template Version : 1.0 * ================================================================= */ (function($) { "use strict"; $(document).ready(function() { /* ================================================== # Wow Init ===============================================*/ var wow = new WOW({ boxClass: 'wow', // animated element css class (default is wow) animateClass: 'animated', // animation css class (default is animated) offset: 0, // distance to the element when triggering the animation (default is 0) mobile: true, // trigger animations on mobile devices (default is true) live: true // act on asynchronously loaded content (default is true) }); wow.init(); /* ================================================== # Tooltip Init ===============================================*/ $('[data-toggle="tooltip"]').tooltip(); /* ================================================== # Youtube Video Init ===============================================*/ $('.player').mb_YTPlayer(); /* ================================================== # Slide Animated Button ===============================================*/ var $slideLink = $(".text-slide"), slideLinkText = $slideLink.find("span")[0]; $slideLink.on("mouseenter", linkOver); function linkOver() { TweenLite.to(slideLinkText, 0.3, { y: -25, ease: Cubic.easeIn, onComplete: function() { TweenLite.fromTo(slideLinkText, 0.3, { y: 25 }, { y: 0, ease: Cubic.easeOut }) } }); } /* ================================================== # Scrolla active ===============================================*/ $('.animate').scrolla(); /* ================================================== # imagesLoaded active ===============================================*/ $('#gallery-masonary,.blog-masonry').imagesLoaded(function() { /* Filter menu */ $('.mix-item-menu').on('click', 'button', function() { var filterValue = $(this).attr('data-filter'); $grid.isotope({ filter: filterValue }); }); /* filter menu active class */ $('.mix-item-menu button').on('click', function(event) { $(this).siblings('.active').removeClass('active'); $(this).addClass('active'); event.preventDefault(); }); /* Filter active */ var $grid = $('#gallery-masonary').isotope({ itemSelector: '.gallery-item', percentPosition: true, masonry: { columnWidth: '.gallery-item', } }); /* Filter active */ $('.blog-masonry').isotope({ itemSelector: '.blog-item', percentPosition: true, masonry: { columnWidth: '.blog-item', } }); }); /* ================================================== # Fun Factor Init ===============================================*/ $('.timer').countTo(); $('.fun-fact').appear(function() { $('.timer').countTo(); }, { accY: -100 }); /* ================================================== # Magnific popup init ===============================================*/ $(".popup-link").magnificPopup({ type: 'image', // other options }); $(".popup-gallery").magnificPopup({ type: 'image', gallery: { enabled: true }, // other options }); $(".popup-youtube, .popup-vimeo, .popup-gmaps").magnificPopup({ type: "iframe", mainClass: "mfp-fade", removalDelay: 160, preloader: false, fixedContentPos: false }); $('.magnific-mix-gallery').each(function() { var $container = $(this); var $imageLinks = $container.find('.item'); var items = []; $imageLinks.each(function() { var $item = $(this); var type = 'image'; if ($item.hasClass('magnific-iframe')) { type = 'iframe'; } var magItem = { src: $item.attr('href'), type: type }; magItem.title = $item.data('title'); items.push(magItem); }); $imageLinks.magnificPopup({ mainClass: 'mfp-fade', items: items, gallery: { enabled: true, tPrev: $(this).data('prev-text'), tNext: $(this).data('next-text') }, type: 'image', callbacks: { beforeOpen: function() { var index = $imageLinks.index(this.st.el); if (-1 !== index) { this.goTo(index); } } } }); }); /* ================================================== Nice Select Init ===============================================*/ $('.esitmate-form select').niceSelect(); /* ================================================== _Progressbar Init ===============================================*/ function animateElements() { $('.progressbar').each(function() { var elementPos = $(this).offset().top; var topOfWindow = $(window).scrollTop(); var percent = $(this).find('.circle').attr('data-percent'); var animate = $(this).data('animate'); if (elementPos < topOfWindow + $(window).height() - 30 && !animate) { $(this).data('animate', true); $(this).find('.circle').circleProgress({ // startAngle: -Math.PI / 2, value: percent / 100, size: 120, thickness: 10, lineCap: 'round', emptyFill: '#434448', fill: { gradient: ['#DF0A0A', '#930707'] } }).on('circle-animation-progress', function(event, progress, stepValue) { $(this).find('strong').text((stepValue * 100).toFixed(0) + "%"); }).stop(); } }); } animateElements(); $(window).scroll(animateElements); /* ================================================== # Banner Carousel ===============================================*/ const bannerFade = new Swiper(".banner-fade", { // Optional parameters direction: "horizontal", loop: true, autoplay: false, effect: "fade", fadeEffect: { crossFade: true }, // If we need pagination pagination: { el: '.swiper-pagination', type: 'bullets', clickable: true, }, // Navigation arrows navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev" } // And if we need scrollbar /*scrollbar: { el: '.swiper-scrollbar', },*/ }); /* ================================================== # Banner Carousel ===============================================*/ const bannerStyleTwo = new Swiper(".banner-style-two-carousel", { // Optional parameters direction: "horizontal", loop: true, autoplay: true, effect: "fade", fadeEffect: { crossFade: true }, speed: 3000, autoplay: { delay: 5000, disableOnInteraction: false, }, // If we need pagination pagination: { el: '.swiper-pagination', type: 'bullets', clickable: true, }, // Navigation arrows navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev" } // And if we need scrollbar /*scrollbar: { el: '.swiper-scrollbar', },*/ }); /* ================================================== # Project Carousel ===============================================*/ const projectStyleOneCarousel = new Swiper(".project-style-one-carousel", { // Optional parameters direction: "horizontal", loop: true, grabCursor: true, autoplay: false, // If we need pagination pagination: { el: '.project-pagination', type: 'fraction', clickable: true, }, // Navigation arrows navigation: { nextEl: ".project-button-next", prevEl: ".project-button-prev" } // And if we need scrollbar /*scrollbar: { el: '.swiper-scrollbar', },*/ }); /* ================================================== # Testimonials Carousel ===============================================*/ const testimonialCarousel = new Swiper(".testimonial-carousel", { // Optional parameters direction: "horizontal", loop: true, autoplay: true, // And if we need scrollbar /*scrollbar: { el: '.swiper-scrollbar', },*/ }); /* ================================================== # Testimonail Style Two Carousel ===============================================*/ const testimonialTwo = new Swiper(".testimonial-style-two-carousel", { // Optional parameters loop: true, freeMode: true, grabCursor: true, slidesPerView: 1, centeredSlides: true, spaceBetween: 50, autoplay: true, pagination: { el: ".swiper-pagination", clickable: true, }, breakpoints: { 1200: { slidesPerView: 2.5, }, }, }); /* ================================================== # Clients Carousel ===============================================*/ const clientsTwoCarousel = new Swiper(".clients-style-two-carousel", { // Optional parameters loop: true, slidesPerView: 2, spaceBetween: 15, autoplay: true, pagination: { el: ".swiper-pagination", clickable: true, }, // Navigation arrows navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev" }, breakpoints: { 768: { slidesPerView: 3, spaceBetween: 30, }, 992: { slidesPerView: 3, spaceBetween: 30, } }, }); /* ================================================== # Team Carousel ===============================================*/ const teamCarousel = new Swiper(".team-carousel", { // Optional parameters loop: true, slidesPerView: 1, spaceBetween: 15, autoplay: true, pagination: { el: ".swiper-pagination", clickable: true, }, // Navigation arrows navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev" }, breakpoints: { 768: { slidesPerView: 2, spaceBetween: 30, }, 992: { slidesPerView: 3, spaceBetween: 30, } }, }); /* ================================================== # Services Carousel ===============================================*/ const servicesCarousel = new Swiper(".services-carousel", { // Optional parameters loop: true, freeMode: true, grabCursor: true, slidesPerView: 1, spaceBetween: 30, autoplay: true, // If we need pagination pagination: { el: '.services-pagination', type: 'fraction', clickable: true, }, // Navigation arrows navigation: { nextEl: ".services-button-next", prevEl: ".services-button-prev" }, breakpoints: { 800: { slidesPerView: 2, spaceBetween: 30, }, 992: { slidesPerView: 3, spaceBetween: 30, }, 1250: { slidesPerView: 3.6, spaceBetween: 50, }, }, }); /* ================================================== # Gallery Style Four Carousel ===============================================*/ const galleryFour = new Swiper(".gallery-style-four-carousel", { // Optional parameters loop: true, freeMode: true, grabCursor: true, slidesPerView: 1, spaceBetween: 50, autoplay: true, pagination: { el: ".swiper-pagination", clickable: true, }, breakpoints: { 991: { slidesPerView: 2, }, 1200: { slidesPerView: 3.5, centeredSlides: true, }, }, }); /* ================================================== Range Slider ================================================== */ $("#slider-range").slider({ range: true, min: 0, max: 100000, values: [50000, 100000], slide: function(event, ui) { $("#amount").val("$" + ui.values[0]); } }); $("#amount").val("$" + $("#slider-range").slider("values", 0)); /* ================================================== Contact Form Validations ================================================== */ $('.contact-form').each(function() { var formInstance = $(this); formInstance.submit(function() { var action = $(this).attr('action'); $("#message").slideUp(750, function() { $('#message').hide(); $('#submit') .after('<img src="assets/img/ajax-loader.gif" class="loader" />') .attr('disabled', 'disabled'); $.post(action, { name: $('#name').val(), email: $('#email').val(), phone: $('#phone').val(), comments: $('#comments').val() }, function(data) { document.getElementById('message').innerHTML = data; $('#message').slideDown('slow'); $('.contact-form img.loader').fadeOut('slow', function() { $(this).remove() }); $('#submit').removeAttr('disabled'); } ); }); return false; }); }); }); // end document ready function /* ================================================== # Related Product Carousel ===============================================*/ const relatedProduct = new Swiper(".related-product-carousel", { // Optional parameters loop: true, slidesPerView: 1, spaceBetween: 30, autoplay: true, breakpoints: { 768: { slidesPerView: 3, }, 992: { slidesPerView: 3, }, 1200: { slidesPerView: 4, }, }, }); /* ================================================== Preloader Init ===============================================*/ function loader() { $(window).on('load', function() { $('#consua-preloader').addClass('loaded'); $("#loading").fadeOut(500); // Una vez haya terminado el preloader aparezca el scroll if ($('#consua-preloader').hasClass('loaded')) { // Es para que una vez que se haya ido el preloader se elimine toda la seccion preloader $('#preloader').delay(900).queue(function() { $(this).remove(); }); } }); } loader(); // jQuery(document.body).trigger('wc_fragment_refresh'); $(document).on('click', '.mini_cart_item a.remove', function (e) { e.preventDefault(); var product_id = $(this).attr("data-product_id"), cart_item_key = $(this).attr("data-cart_item_key"), product_container = $(this).parents('.mini_cart_item'); // Add loader product_container.block({ message: null, overlayCSS: { cursor: 'none' } }); $.ajax({ type: 'POST', dataType: 'json', url: wc_add_to_cart_params.ajax_url, data: { action: "product_remove", product_id: product_id, cart_item_key: cart_item_key }, success: function(response) { if ( ! response || response.error ) return; var fragments = response.fragments; // Replace fragments if ( fragments ) { $.each( fragments, function( key, value ) { $( key ).replaceWith( value ); }); } } }); }); })(jQuery); // End jQuery
©
2018.