diff --git a/js/toggle-utils.mjs b/js/toggle-utils.mjs new file mode 100644 index 0000000..c642496 --- /dev/null +++ b/js/toggle-utils.mjs @@ -0,0 +1,26 @@ +'use strict'; + +const toggleUtils = { + toggleClass(el, className) { + el.classList.toggle(className); + }, + + addClass(el, className) { + el.classList.add(className); + }, + + removeClass(el, className) { + el.classList.remove(className); + }, +}; + +document.addEventListener('click', function (evt) { + const dropdown = document.getElementById('navMenu'); + const clickedOnDropdown = evt.target.classList.contains('dropdown'); + + if (!clickedOnDropdown) toggleUtils.addClass(dropdown, 'hidden'); + if (clickedOnDropdown) toggleUtils.toggleClass(dropdown, 'hidden'); +}); + +export default toggleUtils; + diff --git a/pages/gallery-page.html b/pages/gallery-page.html index 39cb308..18029d9 100644 --- a/pages/gallery-page.html +++ b/pages/gallery-page.html @@ -108,9 +108,9 @@

Search Bar

-
- More - + More + Projects Dropdown MenuSearch Bar />
-