[JavaScript] Konflikt po kliknięciu w <body>, pokaż/zamknij sidebary |
[JavaScript] Konflikt po kliknięciu w <body>, pokaż/zamknij sidebary |
23.10.2017, 21:22:51
Post
#1
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 1 Dołączył: 30.11.2011 Ostrzeżenie: (0%) |
Cześć,
piszę taką małą aplikację w JS i chciałem uzyskać efekt zamknięcia bocznego menu po kliknięciu/tapnięciu w "wolną" przesteń na ekranie poza tym rozwiniętym sidebarem. Ale jak dam coś takiego: document.body.addEventListener('click', closeAll, false); to wyłącza mi możliwość wyświetlenia sidebarów po kliknięciu w jakiś przycisk bo ten eventListener na body sprawia że cokolwiek bym nie kliknął (np. przycisk ShowSidebar) to i tak ważniejsze będzie to na body. Chciałbym zapytać o jakąś radę, na co ustawić ten click. Oczywiście nie chodzi mi o kod ale o ogólny pomysł. Pozdrawiam |
|
|
24.10.2017, 08:48:37
Post
#2
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 77 Dołączył: 6.09.2008 Skąd: Miechów / Kraków Ostrzeżenie: (0%) |
W którym momencie dodajesz obsługę kliknięcia body? Powinno być dodawane dopiero w momencie rozwijania sidebara - wcześniej nie ma to sensu. Oprócz tego do funkcji obsługującej zdarzenie jako pierwszy parametr są przekazywane dodatkowe informacje o wywołanym wydarzeniu, w tym m.in. element, który je wywołał. Zatem możesz przerwać działanie funkcji jeśli element wywołujący zdarzenie jest częścią sidebara.
-------------------- Niemożliwym jest stworzenie czegokolwiek idiotoodpornego, ponieważ idioci są wyjątkowo pomysłowi.
https://www.aroch.pl https://themeforest.net/user/aroch https://www.astroblog.aroch.pl https://www.4geeks.pl |
|
|
Wersja Lo-Fi | Aktualny czas: 25.04.2024 - 02:52 |