diff options
author | Sergey Chebotar <s.chebotar@gmail.com> | 2023-01-31 14:54:32 +0300 |
---|---|---|
committer | Sergey Chebotar <s.chebotar@gmail.com> | 2023-01-31 14:54:32 +0300 |
commit | b8fa6f7418c45785767bff42f9857af08fc9d891 (patch) | |
tree | 344c7ddd1f6664176d9388627db5fe03939782b1 /wwwroot/js |
Initial commit
Diffstat (limited to 'wwwroot/js')
-rw-r--r-- | wwwroot/js/scripts.js | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/wwwroot/js/scripts.js b/wwwroot/js/scripts.js new file mode 100644 index 0000000..e1380cd --- /dev/null +++ b/wwwroot/js/scripts.js @@ -0,0 +1,54 @@ +/*! +* Start Bootstrap - Grayscale v7.0.5 (https://startbootstrap.com/theme/grayscale) +* Copyright 2013-2022 Start Bootstrap +* Licensed under MIT (https://github.com/StartBootstrap/startbootstrap-grayscale/blob/master/LICENSE) +*/ +// +// Scripts +// + +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(); + } + }); + }); + +});
\ No newline at end of file |