diff --git a/about.html b/about.html index 04dfbbc..40c9c03 100644 --- a/about.html +++ b/about.html @@ -12,34 +12,54 @@ -
@@ -286,5 +306,6 @@ + diff --git a/contact.html b/contact.html index 2bcda6a..1c68e94 100644 --- a/contact.html +++ b/contact.html @@ -11,32 +11,53 @@
@@ -150,5 +171,6 @@ + diff --git a/faq.html b/faq.html index 0a91a16..9740211 100644 --- a/faq.html +++ b/faq.html @@ -14,33 +14,53 @@
@@ -339,5 +359,6 @@ + diff --git a/index.html b/index.html index 3550f27..50a1a60 100644 --- a/index.html +++ b/index.html @@ -32,48 +32,53 @@
@@ -893,5 +898,6 @@ + diff --git a/privacy.html b/privacy.html index 07d5cbe..24648d7 100644 --- a/privacy.html +++ b/privacy.html @@ -13,32 +13,53 @@
@@ -260,5 +281,6 @@ + diff --git a/src/js/mobileMenu.ts b/src/js/mobileMenu.ts new file mode 100644 index 0000000..1b88247 --- /dev/null +++ b/src/js/mobileMenu.ts @@ -0,0 +1,48 @@ +document.addEventListener('DOMContentLoaded', () => { + const mobileMenuButton = document.getElementById('mobile-menu-button'); + const mobileMenu = document.getElementById('mobile-menu'); + const menuIcon = document.getElementById('menu-icon'); + const closeIcon = document.getElementById('close-icon'); + + if (mobileMenuButton && mobileMenu && menuIcon && closeIcon) { + // Toggle menu on button click + mobileMenuButton.addEventListener('click', () => { + const isExpanded = mobileMenuButton.getAttribute('aria-expanded') === 'true'; + + // Toggle menu visibility + mobileMenu.classList.toggle('hidden'); + + // Toggle icons + menuIcon.classList.toggle('hidden'); + closeIcon.classList.toggle('hidden'); + + // Update aria-expanded for accessibility + mobileMenuButton.setAttribute('aria-expanded', (!isExpanded).toString()); + }); + + // Close menu when clicking on a link + const mobileLinks = mobileMenu.querySelectorAll('a'); + mobileLinks.forEach(link => { + link.addEventListener('click', () => { + mobileMenu.classList.add('hidden'); + menuIcon.classList.remove('hidden'); + closeIcon.classList.add('hidden'); + mobileMenuButton.setAttribute('aria-expanded', 'false'); + }); + }); + + // Close menu when clicking outside + document.addEventListener('click', (event) => { + const target = event.target as Node; + const isClickInsideMenu = mobileMenu.contains(target); + const isClickOnButton = mobileMenuButton.contains(target); + + if (!isClickInsideMenu && !isClickOnButton && !mobileMenu.classList.contains('hidden')) { + mobileMenu.classList.add('hidden'); + menuIcon.classList.remove('hidden'); + closeIcon.classList.add('hidden'); + mobileMenuButton.setAttribute('aria-expanded', 'false'); + } + }); + } +}); \ No newline at end of file diff --git a/terms.html b/terms.html index fb66396..fc5149e 100644 --- a/terms.html +++ b/terms.html @@ -11,33 +11,54 @@ -
@@ -249,5 +270,6 @@ +