From d5c33a7ddca9bd104d8acd913980cc978cc46c64 Mon Sep 17 00:00:00 2001 From: natnoppol <126169607+natnoppol@users.noreply.github.com> Date: Sun, 14 Apr 2024 11:34:00 +0200 Subject: [PATCH] add dropdown on Navbar (#437) * add dropdown on Navbar * update dropdown function --- js/toggle-utils.mjs | 26 ++++++++++++++++++++++++++ pages/gallery-page.html | 11 +++++++---- 2 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 js/toggle-utils.mjs 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 />
-