Rolf B: Dropdown Menu (Beispiel von Rolf B.)

Beitrag lesen

Hallo Gerrit,

nur mit JavaScript. Da könntest Du einen click-Handler auf das window-Objekt legen (nicht den body, der füllt ggf. nicht das ganze Fenster aus), der das details-Element schließt, wenn ein click bei ihm ankommt.

Willst Du das?

<script type="module">
let menu = document.querySelector("nav details");
window.addEventListener("click", function(event) {
   if (event.target.closest("details") != menu) {
      menu.removeAttribute("open");
    }
});
</script>

(Edit: Bei Klick ins offene Menü nicht schließen. Wegen der Variablen menu in type="module" Script-Element setzen, oder anderswie/-wo kapseln, um globalen Müll zu vermeiden.)

Den Selektor in querySelector musst Du ggf. an deine konkrete Seite anpassen. Aber wenn dein details-Element eine ID hat, bist Du mit getElementById("...") statt querySelector("...") besser beraten.

Rolf

--
sumpsi - posui - obstruxi