window.addEventListener('DOMContentLoaded', event => { // Navbar shrink function var navbarShrink = function () { const navbarCollapsible = document.body.querySelector('#mainNav'); if (!navbarCollapsible) { return; } if (window.scrollY === 0) { navbarCollapsible.classList.remove('navbar-shrink') } else { navbarCollapsible.classList.add('navbar-shrink') } }; // Shrink the navbar navbarShrink(); // Shrink the navbar when page is scrolled document.addEventListener('scroll', navbarShrink); // Activate Bootstrap scrollspy on the main nav element const mainNav = document.body.querySelector('#mainNav'); if (mainNav) { new bootstrap.ScrollSpy(document.body, { target: '#mainNav', offset: 74, }); }; // Collapse responsive navbar when toggler is visible const navbarToggler = document.body.querySelector('.navbar-toggler'); const responsiveNavItems = [].slice.call( document.querySelectorAll('#navbarResponsive .nav-link') ); responsiveNavItems.map(function (responsiveNavItem) { responsiveNavItem.addEventListener('click', () => { if (window.getComputedStyle(navbarToggler).display !== 'none') { navbarToggler.click(); } }); }); // Activate SimpleLightbox plugin for portfolio items new SimpleLightbox({ elements: '#portfolio a.portfolio-box' }); function applyTheme(theme) { document.body.classList.remove("theme-auto", "theme-light", "theme-dark"); document.body.classList.add(`theme-${theme}`); } document.addEventListener("DOMContentLoaded", () => { document.querySelector("#theme").addEventListener("change", function() { applyTheme(this.value); }); }); document.addEventListener("DOMContentLoaded", () => { const savedTheme = localStorage.getItem("theme") || "auto"; applyTheme(savedTheme); for (const optionElement of document.querySelectorAll("#theme option")) { optionElement.selected = savedTheme === optionElement.value; } document.querySelector("#theme").addEventListener("change", function () { localStorage.setItem("theme", this.value); applyTheme(this.value); }); }); });