(function ($) { "use strict"; if ($(".sticky-header").length) { $(".sticky-header") .clone() .insertAfter(".sticky-header") .addClass("sticky-header--cloned"); } if ($(".main-menu__list").length) { let menuElement = $(".main-menu__list"); let currentMenuItem = menuElement.find("li.current-menu-item"); let currentMenuParent = menuElement.find("li.current-menu-parent"); let currentMenuAncestor = menuElement.find("li.current-menu-ancestor"); let currentPageItem = menuElement.find("li.current_page_item"); currentMenuItem.addClass("current"); currentMenuParent.addClass("current"); currentMenuAncestor.addClass("current"); currentPageItem.addClass("current"); } if ($(".service-details__category-list").length) { let menuElement = $(".service-details__category-list"); let currentMenuItem = menuElement.find("li.current-menu-item"); let currentMenuParent = menuElement.find("li.current-menu-parent"); let currentMenuAncestor = menuElement.find("li.current-menu-ancestor"); let currentPageItem = menuElement.find("li.current_page_item"); currentMenuItem.addClass("active"); currentMenuParent.addClass("active"); currentMenuAncestor.addClass("active"); currentPageItem.addClass("active"); } // Accrodion if ($(".accrodion-grp").length) { var accrodionGrp = $(".accrodion-grp"); accrodionGrp.each(function () { var accrodionName = $(this).data("grp-name"); var Self = $(this); var accordion = Self.find(".accrodion"); Self.addClass(accrodionName); Self.find(".accrodion .accrodion-content").hide(); Self.find(".accrodion.active").find(".accrodion-content").show(); accordion.each(function () { $(this) .find(".accrodion-title") .on("click", function () { if ($(this).parent().hasClass("active") === false) { $(".accrodion-grp." + accrodionName) .find(".accrodion") .removeClass("active"); $(".accrodion-grp." + accrodionName) .find(".accrodion") .find(".accrodion-content") .slideUp(); $(this).parent().addClass("active"); $(this).parent().find(".accrodion-content").slideDown(); } }); }); }); } if ($(".scroll-to-target").length) { $(".scroll-to-target").on("click", function () { var target = $(this).attr("data-target"); // animate $("html, body").animate( { scrollTop: $(target).offset().top }, 1000 ); return false; }); } if ($(".video-popup").length) { $(".video-popup").magnificPopup({ type: "iframe", mainClass: "mfp-fade", removalDelay: 160, preloader: true, fixedContentPos: false }); } if ($(".img-popup").length) { var groups = {}; $(".img-popup").each(function () { var id = parseInt($(this).attr("data-group"), 10); if (!groups[id]) { groups[id] = []; } groups[id].push(this); }); $.each(groups, function () { $(this).magnificPopup({ type: "image", closeOnContentClick: true, closeBtnInside: false, gallery: { enabled: true } }); }); } $(document).on("click", ".add", function () { if ($(this).prev().val() < 999) { $(this) .prev() .val(+$(this).prev().val() + 1); } $(this).prev().trigger("change"); }); $(document).on("click", ".sub", function () { if ($(this).next().val() > 0) { if ($(this).next().val() > 0) $(this) .next() .val(+$(this).next().val() - 1); } $(this).next().trigger("change"); }); if ($(".main-menu__list").length && $(".mobile-nav__container").length) { let navContent = document.querySelector(".main-menu__list").outerHTML; let mobileNavContainer = document.querySelector(".mobile-nav__container"); mobileNavContainer.innerHTML = navContent; } if ($(".sticky-header__content").length) { let navContent = document.querySelector(".main-menu").innerHTML; let mobileNavContainer = document.querySelector(".sticky-header__content"); mobileNavContainer.innerHTML = navContent; } if ($(".mobile-nav__container .main-menu__list").length) { let dropdownAnchor = $( ".mobile-nav__container .main-menu__list .menu-item-has-children > a" ); dropdownAnchor.each(function () { let self = $(this); let toggleBtn = document.createElement("BUTTON"); toggleBtn.setAttribute("aria-label", "dropdown toggler"); toggleBtn.innerHTML = ""; self.append(function () { return toggleBtn; }); self.find("button").on("click", function (e) { e.preventDefault(); let self = $(this); self.toggleClass("expanded"); self.parent().toggleClass("expanded"); self.parent().parent().children("ul").slideToggle(); }); }); } if ($(".mobile-nav__toggler").length) { $(".mobile-nav__toggler").on("click", function (e) { e.preventDefault(); $(".mobile-nav__wrapper").toggleClass("expanded"); $("body").toggleClass("locked"); }); } if ($(".search-toggler").length) { $(".search-toggler").on("click", function (e) { e.preventDefault(); $(".search-popup").toggleClass("active"); $(".mobile-nav__wrapper").removeClass("expanded"); $("body").toggleClass("locked"); }); } if ($(".dynamic-year").length) { let date = new Date(); $(".dynamic-year").html(date.getFullYear()); } // window load event $(window).on("load", function () { if ($(".preloader").length) { $(".preloader").fadeOut(); } if ($(".product__items ul.products").length) { $(".product__items ul.products").imagesLoaded(function () { $(".product__items ul.products").isotope({ layoutMode: "masonry" }); }); } }); // window scroll event function stickyMenuUpScroll($targetMenu, $toggleClass) { var lastScrollTop = 0; window.addEventListener( "scroll", function () { var st = window.pageYOffset || document.documentElement.scrollTop; if (st > 500) { if (st > lastScrollTop) { // downscroll code $targetMenu.removeClass($toggleClass); // console.log("down"); } else { // upscroll code $targetMenu.addClass($toggleClass); // console.log("up"); } } else { $targetMenu.removeClass($toggleClass); } lastScrollTop = st; }, false ); } stickyMenuUpScroll($(".sticky-header--normal"), "active"); /*-- Handle Scrollbar --*/ function handleScrollbar() { const bodyHeight = $("body").height(); const scrollPos = $(window).innerHeight() + $(window).scrollTop(); let percentage = (scrollPos / bodyHeight) * 100; if (percentage > 100) { percentage = 100; } $(".scroll-to-top .scroll-to-top__inner").css("width", percentage + "%"); } function OnePageMenuScroll() { var windscroll = $(window).scrollTop(); if (windscroll >= 117) { var menuAnchor = $(".one-page-scroll-menu .scrollToLink").children("a"); menuAnchor.each(function () { var sections = $(this).attr("href"); $(sections).each(function () { if ($(this).offset().top <= windscroll + 100) { var Sectionid = $(sections).attr("id"); $(".one-page-scroll-menu").find("li").removeClass("current"); $(".one-page-scroll-menu") .find("li") .removeClass("current-menu-ancestor"); $(".one-page-scroll-menu") .find("li") .removeClass("current_page_item"); $(".one-page-scroll-menu") .find("li") .removeClass("current-menu-parent"); $(".one-page-scroll-menu") .find("a[href*=\\#" + Sectionid + "]") .parent() .addClass("current"); } }); }); } else { $(".one-page-scroll-menu li.current").removeClass("current"); $(".one-page-scroll-menu li:first").addClass("current"); } } // window scroll event $(window).on("scroll", function () { OnePageMenuScroll(); handleScrollbar(); if ($(".sticky-header--one-page").length) { var headerScrollPos = 130; var stricky = $(".sticky-header--one-page"); if ($(window).scrollTop() > headerScrollPos) { stricky.addClass("active"); } else if ($(this).scrollTop() <= headerScrollPos) { stricky.removeClass("active"); } } var scrollToTopBtn = ".scroll-to-top"; if (scrollToTopBtn.length) { if ($(window).scrollTop() > 500) { $(scrollToTopBtn).addClass("show"); } else { $(scrollToTopBtn).removeClass("show"); } } }); $(document).on("click", ".shop-one__cart.voldor_ajax ", function (e) { $(".voldor-overlay").fadeIn(300); }); $(document.body).on( "added_to_cart", function (event, fragments, cart_hash, $button) { $(".voldor-overlay").fadeOut(300); } ); // custom coursor if ($(".custom-cursor").length) { var cursor = document.querySelector(".custom-cursor__cursor"); var cursorinner = document.querySelector(".custom-cursor__cursor-two"); var a = document.querySelectorAll("a"); document.addEventListener("mousemove", function (e) { var x = e.clientX; var y = e.clientY; cursor.style.transform = `translate3d(calc(${e.clientX}px - 50%), calc(${e.clientY}px - 50%), 0)`; }); document.addEventListener("mousemove", function (e) { var x = e.clientX; var y = e.clientY; cursorinner.style.left = x + "px"; cursorinner.style.top = y + "px"; }); document.addEventListener("mousedown", function () { cursor.classList.add("click"); cursorinner.classList.add("custom-cursor__innerhover"); }); document.addEventListener("mouseup", function () { cursor.classList.remove("click"); cursorinner.classList.remove("custom-cursor__innerhover"); }); a.forEach((item) => { item.addEventListener("mouseover", () => { cursor.classList.add("custom-cursor__hover"); }); item.addEventListener("mouseleave", () => { cursor.classList.remove("custom-cursor__hover"); }); }); } //Show Popup menu $(document).on("click", ".megamenu-clickable--toggler > a", function (e) { $("body").toggleClass("megamenu-popup-active"); $(this).parent().find("ul").toggleClass("megamenu-clickable--active"); e.preventDefault(); }); $(document).on("click", ".megamenu-clickable--close", function (e) { $("body").removeClass("megamenu-popup-active"); $(".megamenu-clickable--active").removeClass("megamenu-clickable--active"); e.preventDefault(); }); /*-- Back-to-top --*/ let scrollTop = $(".scroll-top path"); if (scrollTop.length) { var e = document.querySelector(".scroll-top path"), t = e.getTotalLength(); (e.style.transition = e.style.WebkitTransition = "none"), (e.style.strokeDasharray = t + " " + t), (e.style.strokeDashoffset = t), e.getBoundingClientRect(), (e.style.transition = e.style.WebkitTransition = "stroke-dashoffset 10ms linear"); var o = function () { var o = $(window).scrollTop(), r = $(document).height() - $(window).height(), i = t - (o * t) / r; e.style.strokeDashoffset = i; }; o(), $(window).scroll(o); var back = $(".scroll-top"), body = $("body, html"); $(window).on("scroll", function () { if ($(window).scrollTop() > $(window).height()) { back.addClass("scroll-top--active"); } else { back.removeClass("scroll-top--active"); } }); } /*-- Dynamic year --*/ let dynamicyearElm = $(".dynamic-year"); if (dynamicyearElm.length) { let currentYear = new Date().getFullYear(); dynamicyearElm.html(currentYear); } })(jQuery);