Miałem podobny problem z Jaws ustawiając tabindex
z linkami do -1. To był z IE9 z JAWS 14,0
Problem zakończony został spowodowany przez ustawienie w pozycji „Jaws Web/HTML/PDF” -> „Linki” o nazwie „Filter kolejnych powtarzających Links”. JAWS opisuje tę funkcję w następujący sposób:
Ta opcja kontroluje, czy kolejne linki prowadzące do tej samej lokalizacji, jeden graficzny i jeden tekst, są filtrowane. Po wybraniu ogłaszane jest tylko łącze tekstowe. To pole wyboru jest domyślnie wybrane.
Na przykład, powiedzmy, że masz link parę ikona/tekstowe, które zarówno zrobić to samo:
<a href="javascript:void(0)" onclick="test();">
<img src="untitled.png" title="Test" alt="Test">
</a>
<a href="javascript:void(0)" onclick="test();">TEST</a>
z ustawieniem sprawdzane JAWS usunie obraz z rzędu zakładki pozostawiając tylko tekst Link tak:
<a tabindex="-1" href="javascript:void(0)" onclick="test();">
<img src="untitled.png" title="Test" alt="Test">
</a>
<a href="javascript:void(0)" onclick="test();">TEST</a>
z mojego doświadczenia i kilka podstawowych testów wierzę dotyczy to tylko wtedy, gdy połączenie obrazu następuje duplikatu link tekstowy, a nie odwrotnie. Dotyczy to także każdego zduplikowanego łącza graficznego następującego po parze obrazu/tekstu.
Problem wpadłem na to, że tylko JAWS wydawało porównać atrybut href
i nie uwzględnia innych atrybutów, takich jak onclick
lub onkeydown
. Połącz to z duplikatem, usuwając zastosowanie do wszystkich linków graficznych następujących po początkowej parze linków graficznych/tekstowych, a skończysz z przypadkiem, w którym link do obrazu znajdujący się za parami obrazów/linków tekstowych dostaje się, gdy nie powinien. Przykład:
<a href="javascript:void(0)" onclick="test();">
<img src="untitled.png" title="Test" alt="Test">
</a>
<a href="javascript:void(0)" onclick="test();">TEST</a>
<a href='javascript:void(0)' onclick="dontTest();">
<img src="untitled2.png" title="Test" alt="Test">
</a>
Wynik:
<a tabindex="-1" href="javascript:void(0)" onclick="test();">
<img src="untitled.png" title="Test" alt="Test">
</a>
<a href="javascript:void(0)" onclick="test();">TEST</a>
<a tabindex="-1" href='javascript:void(0)' onclick="dontTest();">
<img src="untitled2.png" title="Test" alt="Test">
</a>
Uwaga: fakt, że href
jest ustawiony na javascript:void(0)
jest czysto przypadkowe. To zachowanie powinno być odtwarzalne przy użyciu dowolnej wartości dla href
, o ile wartość jest taka sama dla wszystkich łączy.
Mam nadzieję, że to komuś pomaga.
JAWS zrobił z tego koszmar! – Liber
+1 Cieszę się, że mogę to znaleźć i odpowiedź powyżej. Oszalał z tym tabindex = -1. Nie wiem, czy rozwiązanie będzie dotyczyć mojego problemu, ale przynajmniej pomoc w uzyskaniu wiedzy o tym, skąd pochodzi ten problem. – Rohan210