1document.addEventListener("DOMContentLoaded", function() { 2 // Original toggle button functionality 3 document.querySelectorAll('.sub-menu-toggle.resources-submenu').forEach(toggle => { 4 toggle.addEventListener('click', (e) => { 5 e.stopPropagation(); 6 const expanded = toggle.getAttribute('aria-expanded') === 'true'; 7 const submenu = toggle.parentElement.querySelector('.sub-menu-wrapper'); 8 if (expanded) { 9 submenu.classList.add("is-triggered"); 10 toggle.style.top = '8%'; 11 } else { 12 submenu.classList.remove("is-triggered"); 13 toggle.style.top = '30%'; 14 } 15 }); 16 }); 17 18 // Add same functionality to menu item links with children 19 document.querySelectorAll('.menu-item-has-children > a').forEach(link => { 20 link.addEventListener('click', (e) => { 21 e.preventDefault(); // Prevent navigation 22 e.stopPropagation(); 23 24 const toggle = link.parentElement.querySelector('.sub-menu-toggle.resources-submenu'); 25 const submenu = link.parentElement.querySelector('.sub-menu-wrapper'); 26 27 if (toggle && submenu) { 28 const expanded = toggle.getAttribute('aria-expanded') === 'true'; 29 30 if (!expanded) { 31 // Opening the menu 32 submenu.classList.add("is-triggered"); 33 toggle.style.top = '8%'; 34 toggle.setAttribute('aria-expanded', 'true'); 35 } else { 36 // Closing the menu 37 submenu.classList.remove("is-triggered"); 38 toggle.style.top = '30%'; 39 toggle.setAttribute('aria-expanded', 'false'); 40 } 41 } 42 }); 43 }); 44 45 // Close dropdown when clicking outside 46 document.addEventListener('click', (e) => { 47 document.querySelectorAll('.sub-menu-wrapper.is-triggered').forEach(li => { 48 if (!li.contains(e.target)) { 49 document.querySelector('.sub-menu-toggle.resources-submenu').style.top = '30%'; 50 li.classList.remove('is-triggered'); 51 document.querySelector('.header__menu-container .sub-menu-toggle').setAttribute('aria-expanded','false'); 52 } 53 }); 54 }); 55});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.