Przywracanie fokusu po zamknięciu warstwy
Przywróć użytkownika do miejsca, w którym przerwał pracę.
Przywracanie fokusu po zamknięciu warstwy to bezpłatna lekcja Web Accessibility Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Web Accessibility Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Web Accessibility Academy zawiera 4 lekcji w sumie.
Warstwy przejmują fokus
Gdy otwiera się modal, menu lub szuflada, fokus przenosi się do ich wnętrza. Po zamknięciu należy przywrócić fokus do miejsca, w którym znajdował się użytkownik.
Problem utraconego fokusu
Jeśli zamknięta warstwa pozostawi fokus na usuniętym elemencie, fokus wróci do treści strony. Użytkownik zostaje wtedy zagubiony i nie wie, gdzie się znajduje.
Zapamiętaj element wywołujący
Naprawę należy rozpocząć przed otwarciem: zapisz referencję do elementu, który wywołał warstwę, zwykle document.activeElement.
const trigger = document.activeElement;Przywróć fokus po zamknięciu
Po zamknięciu warstwy wywołaj focus() na zapamiętanym elemencie wywołującym, aby użytkownik wrócił dokładnie do miejsca, w którym rozpoczął.
trigger.focus();Pełna podróż w obie strony
Otwarcie: zapisz element wywołujący i ustaw fokus na warstwie. Zamknięcie: ukryj warstwę i przywróć fokus elementowi wywołującemu. Ta pętla to kontrakt fokusu każdej warstwy, którą można zamknąć. 🔁
Natywny dialog pomaga
Element dialog przeglądarki automatycznie przywraca fokus elementowi otwierającemu po wywołaniu close(), dzięki czemu nie trzeba robić tego ręcznie.
myDialog.close();Obsłuż każdą ścieżkę wyjścia
Przywracaj fokus niezależnie od sposobu zamknięcia warstwy: przycisk Zamknij, klawisz Escape i kliknięcie tła powinny przenieść użytkownika z powrotem.
Gdy element wywołujący zniknie
Jeśli element wywołujący został usunięty podczas otwarcia warstwy, przenieś fokus do rozsądnego pobliskiego elementu, nigdy w pustkę.
Dlaczego to takie ważne
Użytkownicy myszy, którzy widzą ekran, prawie tego nie zauważają, ale dla użytkowników klawiatury i czytników ekranu brak przywrócenia fokusu może sprawić, że funkcja stanie się nieużyteczna.
Przetestuj wyłącznie za pomocą klawiatury
Otwórz warstwę klawiszem Enter, zamknij ją klawiszem Escape i sprawdź, czy obramowanie fokusu ponownie pojawia się na przycisku, który ją otworzył.
Wyrób sobie nawyk
Traktuj przywracanie fokusu jako część tworzenia każdej nakładki, a nie czynność odkładaną na później. Dodaj je od razu wraz z logiką otwierania i zamykania.
Szybki test
Niestandardowy modal zostaje zamknięty. Dokąd należy przenieść fokus?
Podsumowanie
Potrafi już Pan zamknąć pełny cykl: zapisać element wywołujący przy otwieraniu, przywrócić do niego fokus przy każdym sposobie zamknięcia i korzystać z natywnego dialogu, gdy jest to możliwe. 🎯
Często zadawane pytania
Czy lekcja „Przywracanie fokusu po zamknięciu warstwy” jest bezpłatna?
Tak — pełny tekst „Przywracanie fokusu po zamknięciu warstwy” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Web Accessibility Academy, przejdź na CoddyKit PRO. Kurs Web Accessibility Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Przywracanie fokusu po zamknięciu warstwy”?
Przywróć użytkownika do miejsca, w którym przerwał pracę. Ćwiczysz Web Accessibility Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Web Accessibility Academy?
Nie wymagamy żadnego doświadczenia. Web Accessibility Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.
Ile czasu zajmuje lekcja „Przywracanie fokusu po zamknięciu warstwy”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Web Accessibility Academy?
Tak. Każda lekcja Web Accessibility Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- tabindex 0, -1 i nigdy dodatni
- Przenoszenie fokusu po wykonaniu akcji
- Przywracanie fokusu po zamknięciu warstwy
- Zarządzanie roving tabindex w widgetach