app.js

Code Hygiene Score: 100

Keine Issues gefunden.

Versionen 1

Code

/**
 * Campus App - Vanilla JS
 */
document.addEventListener("DOMContentLoaded", function () {
  // Mobile Navigation Toggle
  const navToggle = document.querySelector(".nav-toggle");
  const navItems = document.querySelector(".nav-items");

  if (navToggle && navItems) {
    navToggle.addEventListener("click", function () {
      const isOpen = navItems.classList.toggle("open");
      navToggle.setAttribute("aria-expanded", isOpen);
    });

    // Dropdown toggle for mobile (click instead of hover)
    const dropdownBtns = document.querySelectorAll(".nav-dropdown-btn");
    dropdownBtns.forEach(function (btn) {
      btn.addEventListener("click", function (e) {
        if (window.innerWidth <= 768) {
          e.preventDefault();
          const dropdown = btn.parentElement;
          dropdown.classList.toggle("active");
        }
      });
    });

    // Close dropdowns when clicking outside
    document.addEventListener("click", function (e) {
      if (!e.target.closest(".nav-dropdown") && !e.target.closest(".nav-toggle")) {
        document.querySelectorAll(".nav-dropdown.active").forEach(function (d) {
          d.classList.remove("active");
        });
      }
    });
  }
});
← Übersicht