5

Napisałem stronę, która używa jQuery do wyświetlania modalnego wyskakującego okienka. Zasadniczo obejmuje cały widoczny obszar ekranu z nakładką, a następnie pokazuje DIV, który zawiera rzeczywiste wyskakujące okienko nad nakładką. Jedno z wymagań tego projektu dotyczy dostępności.Czy czytnik ekranu może być "zablokowany" w elemencie DIV?

Mogliśmy skupić się na modalu, gdy się pojawi, aby czytnik ekranu przerwał to, co robi i zaczął czytać w modalu. Jednak naszym obecnym problemem jest to, że gdy czytnik ekranu JAWS kończy czytać tekst w oknie modalnym, przechodzi on dalej i czyta tekst poza oknem (pod nakładką).

Czy istnieje sposób na "zablokowanie" czytnika ekranu wewnątrz określonego elementu, tak aby nie mógł odczytać niczego poza nim?

+0

Wiesz, co robię, gdy widzę twoją stronę internetową zawierającą te absurdalne wyskakujące okienka? Zamykam okno. Jeśli naprawdę chcę przeczytać zawartość, kliknę prawym przyciskiem myszy na stronie i usunę element z webkita. "Techniki", takie jak to, co robisz, powodują pogarszanie jakości internetu i są denerwujące. Bez względu na to, z jakimi problemami się borykasz, lepiej zrobić coś innego, co nie rozzłości swoich czytelników. – Incognito

+1

Doceniam twoje myśli, ale nie tylko modalne wyskakujące okienka są dziś powszechne, decyzja nie zależy ode mnie. Pracuję dla firmy z listy Fortune 100 i to jest ich decyzja, nie moja. Nie wszyscy mamy całkowitą władzę nad tym, co tworzymy, ale pamiętajcie o tym przed dokonaniem osądu o tym, co robię. – Scott

+0

Nie osądzam ciebie, mówię ci problem z tym, co robisz. Gdybym cię osądzał, powiedziałbym "jesteś leniwy i boisz się mówić im, jak poprawić użyteczność", a nie rzeczywiste problemy z tym, co robisz i doradzasz wybrać alternatywę. – Incognito

Odpowiedz

3

Jeśli dodać atrybut:

aria-disabled="true" 

do reszty znaczników stronie po ustawieniu ostrości w tym modalnym, należy zachować ekranu czytelników od czytania tych treści. Jest to najłatwiejsze do wykonania, jeśli cała inna zawartość znajduje się w DIV, a model jest dodawany do DOM jako rodzeństwo do tego DIV (więc wystarczy dodać ten atrybut do jednego elementu).

Alternatywnie, jeśli jest to możliwe w twoim oknie dialogowym, możesz dodać kartę JavaScript - naciśnij/wyostrzenie, aby utrzymać użytkownika w pętli w tym oknie dialogowym. Jeśli nie możesz wyjść z okna dialogowego za pomocą klawiatury (po naciśnięciu przycisku zamykania/anulowania), powinien być ogólnie dostępny.

+0

Dzięki Matt, zaraz zrobię to zdjęcie. Już "uwięziliśmy" użytkownika w modalu za pomocą klawisza tab/keypresses, ale jeśli po prostu pozwolimy czytnikowi ekranu przeczytać, to wychodzi poza modal. – Scott

Powiązane problemy