• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

zamykanie menu po kliknięciu - js

0 głosów
2,318 wizyt
pytanie zadane 18 lipca 2017 w JavaScript przez Alterwar Dyskutant (7,650 p.)
Witam,

mam pewien problem. Mam menu na mobilce. Po kliknięciu w button menu się rozwija, kolejne kliknięcie powoduje zamknięcie za pomocą toggle. Jak zrobić w js, że po kliknięciu nie w link, menu się zamknie? Założmy otworzyliśmy menu i nie klikamy znowu w button aby je zamknąć tylko klikamy gdziekolwiek na ekranie a menu nam się zwija. Ma ktoś pomysł jak to zrobić?

Tutaj kod: https://codepen.io/alterwar/pen/QgRRPQ
1
komentarz 18 lipca 2017 przez Arkadiusz Waluk Ekspert (291,530 p.)
Logicznie myśląc: dodać zdarzenie click do całości strony, np. do window czy body, które ukrywałoby menu. Tak bym próbował, czy jakoś inaczej się da nie wiem.
komentarz 18 lipca 2017 przez Alterwar Dyskutant (7,650 p.)

Bo w samym css wygląda to tak:

side-menu-trigger:focus ~ .side-menu, .side-menu:hover {
      transform: translateX(-300px); 
    }

tylko, że znowu nie obsługuje drugiego kliknięcia w przycisk aby zamknąć

komentarz 18 lipca 2017 przez Alterwar Dyskutant (7,650 p.)

1 odpowiedź

+3 głosów
odpowiedź 18 lipca 2017 przez niezalogowany
wybrane 18 lipca 2017 przez Alterwar
 
Najlepsza

window.addEventListener click >
if (!e.target.matches('slektor css linku')) closeMenu()

Ciekawą sztuczkę można zastosować jeśli chcesz zamykać menu tylko przy kilknięciu poza menu

if (!e.target.matches('slektor-menu, selektor-menu *')) closeMenu()

komentarz 18 lipca 2017 przez Alterwar Dyskutant (7,650 p.)
Dzięki :) właśnie się zastanawiałem co w przypadku gdy będę miał dropdown menu :) zastosowałem i pięknie działa :)

Podobne pytania

0 głosów
3 odpowiedzi 549 wizyt
pytanie zadane 2 kwietnia 2019 w JavaScript przez VLeniowy Nowicjusz (190 p.)
0 głosów
1 odpowiedź 586 wizyt
pytanie zadane 28 maja 2019 w JavaScript przez Kerto Nowicjusz (240 p.)
0 głosów
2 odpowiedzi 1,240 wizyt
pytanie zadane 27 lutego 2018 w JavaScript przez Konfeusz Bywalec (2,810 p.)

93,742 zapytań

142,678 odpowiedzi

323,299 komentarzy

63,326 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...