Является ли автоматическое назначение фокуса плохим для доступности? - PullRequest
8 голосов
/ 02 февраля 2010

Если у меня есть форма, которая является основной частью содержимого страницы, будет ли назначение фокуса первому полю формы с помощью JavaScript при загрузке страницы иметь какие-либо негативные последствия для доступности?

Ответы [ 6 ]

13 голосов
/ 02 февраля 2010

Короткий ответ: нет, это не делает вещи недоступными, но может сбить с толку. Более длинный ответ следует. Будут ли ваши пользователи знать, что происходит переход на страницу с формой, и нужен ли какой-либо описательный текст, который вы должны прочитать перед заполнением формы? Я пользователь программы чтения с экрана, и это может раздражать, когда я фокусируюсь на случайных полях. Понятно, почему ваш фокус попадает в окно поиска Google, поэтому меня это не беспокоит. Если бы мой фокус автоматически помещался в поле редактирования ответа каждый раз, когда я просматривал вопрос в Stackoverflow, я был бы раздражен, поскольку мне пришлось бы заставлять программу чтения с экрана перемещаться от поля формы к верхней части страницы. *

2 голосов
/ 02 февраля 2010

Может быть немного, если у нас есть пользователь клавиатуры (либо использующий программу чтения с экрана, либо просто обычный пользователь клавиатуры), который ожидает навигации по ссылкам вверху страницы при первом нажатии Tab. Для программ чтения с экрана вы также можете рассмотреть возможность добавления WAI-ARIA для добавления указаний, если пользователи, которые не ожидают, будут сброшены в середину формы.

Если гораздо более вероятно, что пользователь сразу захочет набрать текст в поле, то я думаю, что автофокусировка того стоит. Но по вышеуказанной причине я бы не использовал его на на каждой странице с полем ввода.

Если вы выполняете автофокусировку, обязательно сделайте это сразу, в скрипте как можно скорее после элемента ввода или в будущем, используя атрибут автофокуса HTML5. Не делай этого так поздно, как window.onload. Раздражает то, что вы щелкаете фокус в другом месте только для того, чтобы документ запоздало закончил загрузку и перехватывал фокус на другом элементе по мере ввода.

0 голосов
/ 02 февраля 2010

Многие сайты будут делать это, Google является хорошим примером, единственная проблема заключается в том, что когда вы вводите что-то в адресную строку или в поисковый запрос в вашем браузере, действие фокуса поля формы имеет тенденцию красть сосредоточиться с того места, где вы печатаете. Это маленькая неприятность.

0 голосов
/ 02 февраля 2010

Я бы так не сказал, фрагменты являются компонентом HTTP, и они устанавливают фокус * HTML-страницы ..

0 голосов
/ 02 февраля 2010

Я бы так не сказал. Программа чтения с экрана, вероятно, даже не заметит этого, поскольку не интерпретирует JavaScript на странице.

Другой пользователь, у которого есть «обычный» браузер, получит преимущество, если курсор уже находится в нужном месте, что облегчает навигацию, используя только клавиатуру.

0 голосов
/ 02 февраля 2010

повлияет ли назначение фокуса на первое поле формы с помощью JavaScript при загрузке страницы как-нибудь отрицательно на доступность?

Я не могу думать ни о чем. Между полями может раздражать любое вспомогательное программное обеспечение, которое может запускать пользователь, но первое поле - вряд ли. У меня нет опыта работы со шрифтом Брайля и схожими клиентами.

Видя, что даже Google делает это на своей первой странице, я не думаю, что в любом случае это может быть очень важно.

...