// =================== header js start here =================== // Add class 'menu-item-has-children' to parent li elements of '.submenu' var submenuList = document.querySelectorAll("ul>li>.submenu"); submenuList.forEach(function (submenu) { var parentLi = submenu.parentElement; if (parentLi) { parentLi.classList.add("menu-item-has-children"); } }); // Fix dropdown menu overflow problem var menuList = document.querySelectorAll("ul"); menuList.forEach(function (menu) { var parentLi = menu.parentElement; if (parentLi) { parentLi.addEventListener("mouseover", function () { var menuPos = menu.getBoundingClientRect(); if (menuPos.left + menu.offsetWidth > window.innerWidth) { menu.style.left = -menu.offsetWidth + "px"; } }); } }); // Toggle menu on click var menuLinks = document.querySelectorAll(".menu li a"); menuLinks.forEach(function (link) { link.addEventListener("click", function (e) { e.stopPropagation(); // prevent the event from bubbling up to parent elements var element = link.parentElement; if (parseInt(window.innerWidth, 10) < 1200) { if (element.classList.contains("open")) { element.classList.remove("open"); element.querySelector("ul").style.display = "none"; } else { element.classList.add("open"); element.querySelector("ul").style.display = "block"; } } }); }); // Toggle header bar on click var headerBar = document.querySelector(".header-bar"); headerBar.addEventListener("click", function () { headerBar.classList.toggle("active"); var menu = document.querySelector(".menu"); if (menu) { menu.classList.toggle("active"); } }); //Header var fixedTop = document.querySelector("header"); window.addEventListener("scroll", function () { if (window.scrollY > 300) { fixedTop.classList.add("header-fixed", "fadeInUp"); } else { fixedTop.classList.remove("header-fixed", "fadeInUp"); } }); // =================== header js end here =================== // /*============================================= = Preloader JS = =============================================*/ window.addEventListener('load', function () { var preloader = document.querySelector('.preloader'); if (preloader) { preloader.style.transition = 'opacity .3s ease'; preloader.style.opacity = '0'; setTimeout(function () { preloader.style.display = 'none'; }, 1500); } }); // =================== Change image path start ================== // function changeImage(themeMode = 'light') { const icon = document.querySelector('#btnSwitch img'); if (themeMode === "dark") { icon.src = 'assets/images/icon/sun.svg'; var images = document.querySelectorAll('img.dark'); for (var i = 0; i < images.length; i++) { var oldSrc = images[i].src; oldSrc = oldSrc.replace("-dark.", "."); var oldIndex = oldSrc.lastIndexOf("."); var baseName = oldSrc.slice(0, oldIndex); var extension = oldSrc.slice(oldIndex); var newSrc = baseName + "-dark" + extension; images[i].src = newSrc; } } else { icon.src = 'assets/images/icon/moon.svg'; var images = document.querySelectorAll('img.dark'); for (var i = 0; i < images.length; i++) { var oldSrc = images[i].src; var newSrc = oldSrc.replace("-dark.", "."); images[i].src = newSrc; } } } // =================== Change image path end ================== // /*============================================= = AOS Active = =============================================*/ AOS.init(); /*============================================= = Counter Active = =============================================*/ new PureCounter(); /*============================================= = Update Jquery = =============================================*/ (function ($) { "use strict"; // Show/hide button on scroll window.addEventListener('scroll', function () { var scrollToTop = document.querySelector('.scrollToTop'); if (scrollToTop) { if (window.pageYOffset > 300) { scrollToTop.style.bottom = '7%'; scrollToTop.style.opacity = '1'; scrollToTop.style.transition = 'all .5s ease'; } else { scrollToTop.style.bottom = '-30%'; scrollToTop.style.opacity = '0'; scrollToTop.style.transition = 'all .5s ease'; } } }); $(window).on('scroll', function () { var scroll = $(window).scrollTop(); if (scroll < 245) { $('.scroll-to-target').removeClass('open'); } else { $('.scroll-to-target').addClass('open'); } }); /*============================================= = Scroll Up = =============================================*/ 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); }); } $('.blog-masonry-active').imagesLoaded(function () { // init Isotope var $grid = $('.blog-masonry-active').isotope({ itemSelector: '.grid-item', percentPosition: true, masonry: { columnWidth: 1, } }); }); $("[data-bg-color]").each(function () { $(this).css("background-color", $(this).attr("data-bg-color")); }); })(jQuery);