1 if ($(window).width() < 992) { 2 // Level 1 menu accordion (main menu items) 3 $(".nav-menu .nav-menu container > a").click(function(e){ 4 e.preventDefault() 5 const parentLi = $(this).parent() 6 const isCurrentlyOpen = parentLi.hasClass("menu-open") 7 8 // Close all other open menus (accordion behavior) 9 $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open") 10 $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp() 11 12 // Toggle current menu 13 if (isCurrentlyOpen) { 14 parentLi.removeClass("menu-open") 15 $(this).next(".megamenu").slideUp() 16 } else { 17 parentLi.addClass("menu-open") 18 $(this).next(".megamenu").slideDown() 19 } 20 }) 21 22 // Level 2 menu accordion (submenu items with grandchildren) 23 $(document).on('click', '.dropdown-menu .has-submenu > a', function(e){ 24 e.preventDefault() 25 const parentLi = $(this).parent() 26 const isCurrentlyOpen = parentLi.hasClass("submenu-open") 27 const grandchild = $(this).next(".grandchild") 28 29 // Close all other open submenus in the same dropdown (accordion behavior) 30 parentLi.siblings('.has-submenu').removeClass("submenu-open") 31 parentLi.siblings('.has-submenu').find('.grandchild').slideUp() 32 parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)') 33 34 // Toggle current submenu 35 if (isCurrentlyOpen) { 36 parentLi.removeClass("submenu-open") 37 grandchild.slideUp() 38 $(this).find('.chevron-right').css('transform', 'rotate(0deg)') 39 } else { 40 parentLi.addClass("submenu-open") 41 grandchild.slideDown() 42 $(this).find('.chevron-right').css('transform', 'rotate(90deg)') 43 } 44 }) 45 46 $("#menu-hamburger").click(function(e){ 47 e.preventDefault() 48 $("body").toggleClass("nav_open") 49 }) 50 51 // Handle close button click 52 $("#nav-close").click(function(e){ 53 e.preventDefault() 54 $("body").removeClass("nav_open") 55 // Close all open menus when close button is clicked 56 $(".nav-menu .nav-menu container").removeClass("menu-open") 57 $(".nav-menu .megamenu").slideUp() 58 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 59 $(".dropdown-menu .grandchild").slideUp() 60 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 61 }) 62 } 63 64 $(".overlay-nav").click(function(e){ 65 e.preventDefault() 66 $("body").removeClass("nav_open") 67 // Close all open menus when overlay is clicked 68 $(".nav-menu .nav-menu container").removeClass("menu-open") 69 $(".nav-menu .megamenu").slideUp() 70 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 71 $(".dropdown-menu .grandchild").slideUp() 72 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 73 }) 74
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.