pierreguillou commited on
Commit
bb0deeb
·
verified ·
1 Parent(s): 41088ce

Create script.js

Browse files
Files changed (1) hide show
  1. script.js +45 -0
script.js ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function() {
2
+ const menuBtn = document.getElementById('inlineMenuBtn');
3
+ const menu = document.getElementById('inlineMenu');
4
+ const topLink = document.getElementById('scrollTopLink');
5
+
6
+ function closeMenu() {
7
+ if (!menu) return;
8
+ menu.classList.remove('open');
9
+ menu.setAttribute('aria-hidden', 'true');
10
+ }
11
+
12
+ if (menuBtn && menu) {
13
+ menuBtn.addEventListener('click', function(e) {
14
+ e.preventDefault();
15
+ const isOpen = menu.classList.contains('open');
16
+ if (isOpen) {
17
+ closeMenu();
18
+ } else {
19
+ menu.classList.add('open');
20
+ menu.setAttribute('aria-hidden', 'false');
21
+ }
22
+ });
23
+ }
24
+
25
+ if (topLink) {
26
+ topLink.addEventListener('click', function(e) {
27
+ e.preventDefault();
28
+ window.scrollTo({ top: 0, behavior: 'smooth' });
29
+ closeMenu();
30
+ });
31
+ }
32
+
33
+ // Close when clicking outside
34
+ document.addEventListener('click', function(e) {
35
+ if (!menu || !menuBtn) return;
36
+ if (!menu.contains(e.target) && !menuBtn.contains(e.target)) {
37
+ closeMenu();
38
+ }
39
+ });
40
+
41
+ // Accessibility: close on Escape
42
+ document.addEventListener('keydown', function(e) {
43
+ if (e.key === 'Escape') closeMenu();
44
+ });
45
+ })();