Вы должны понимать разницу между «режимом просмотра» программы чтения с экрана и «формой».В «режиме просмотра» пользователь программы чтения с экрана может «просматривать» DOM с помощью сочетаний клавиш программы чтения с экрана.Например, буква «H» переместит фокус чтения с экрана на следующий заголовок, буква «B» - следующую кнопку, буква «L» - следующий список, буква «T» - следующую таблицу и т. Д.все сочетания клавиш одного символа.Не нужно нажимать модификатор (такой как ctrl или alt ).
Когда фокус чтения с экрана перемещается на элемент, который хотел бы иметь события клавиатуры, напримерЧто касается поля ввода, то в программе чтения с экрана есть опции, которые «режим просмотра» может автоматически сменить на «режим форм» (чтобы вы могли вводить вещи в поле формы).JAWS изменит режимы автоматически, но вы можете изменить настройки так, чтобы режим был изменен вручную.Я подозреваю, что вы установили «автоматический», так как это значение по умолчанию.
Однако, это автоматическое изменение только происходит для определенных элементов, таких как <input>
.Это не происходит для ссылок, потому что вы обычно ничего не печатаете на ссылке (кроме ENTER).
Итак, чтобы получить события клавиатуры на ссылке, вы должны вручную переключиться на "режим форм ".Для JAWS (это отличается для NVDA) это можно сделать с помощью Ins + Z .Вы услышите «использовать курсор виртуального ПК ВЫКЛ», когда он изменится. Ins + Z , чтобы включить его снова (вы услышите «Использовать курсор виртуального ПК ВКЛ»).
После нажатия Ins + Z , вы должны иметь возможность вводить букву, когда фокус находится на ссылке, и ваш обработчик событий должен работать.