From 9a36bd94d06ccaf7980c0474594d3622c39dffe4 Mon Sep 17 00:00:00 2001 From: M_Viper Date: Tue, 6 Jan 2026 17:19:47 +0000 Subject: [PATCH] Dateien nach "Minecraft-Modern-Theme/js" hochladen --- Minecraft-Modern-Theme/js/navigation.js | 40 +++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Minecraft-Modern-Theme/js/navigation.js diff --git a/Minecraft-Modern-Theme/js/navigation.js b/Minecraft-Modern-Theme/js/navigation.js new file mode 100644 index 0000000..6e47dc4 --- /dev/null +++ b/Minecraft-Modern-Theme/js/navigation.js @@ -0,0 +1,40 @@ +( function() { + const siteNavigation = document.getElementById( 'site-navigation' ); + const menuToggle = siteNavigation.querySelector( '.menu-toggle' ); + + // Early exit wenn kein Toggle da ist + if ( ! menuToggle ) { + return; + } + + // Toggle Klassen hinzufügen (Menü öffnen/schließen) + menuToggle.addEventListener( 'click', function() { + siteNavigation.classList.toggle( 'toggled' ); + + // Aria States aktualisieren + if ( menuToggle.getAttribute( 'aria-expanded' ) === 'true' ) { + menuToggle.setAttribute( 'aria-expanded', 'false' ); + menuToggle.innerHTML = ''; + } else { + menuToggle.setAttribute( 'aria-expanded', 'true' ); + menuToggle.innerHTML = ''; + } + } ); + + // Mobile Submenu Toggle (Klick auf Parent-Item öffnet Untermenü) + const subMenuParents = siteNavigation.querySelectorAll( '.menu-item-has-children' ); + + subMenuParents.forEach( function( subMenuParent ) { + subMenuParent.addEventListener( 'click', function( e ) { + // Nur auf Mobil aktivieren (Media Query Check) + if ( window.innerWidth <= 992 ) { + // Optional: Verhindern, dass der Link geklickt wird, wenn man nur das Menü öffnen will + // e.preventDefault(); + + // Klasse 'active' umschalten für das CSS Display + this.classList.toggle( 'active' ); + } + } ); + } ); + +} )(); \ No newline at end of file