От автора: я задумывался о реализации бесконечного прокрутки и удалении разбивки на страницы на моей домашней странице, но потом я подумал, что должен сделать ее доступной. Нет смысла предоставлять функцию и позже осознать, что она недоступна для большинства пользователей. Моя основная цель состояла в том, чтобы увидеть, могу ли я сделать бесконечную прокрутку доступной для людей с ограниченными возможностями. Поэтому я выполнил кое-какие исследования на Google. То, что я нашел, изменило мое мнение, и теперь я думаю, что бесконечная прокрутка страницы — это плохо для людей с ограниченными возможностями и широкого круга пользователей.
В то время как ARIA1.1 представил Feed role, которая позволяет сделать бесконечную прокрутку доступной для пользователей, использующих экранных дикторов, прочитав пост в блоге Адриана «Итак, вы думаете, что вы создали хорошую бесконечную прокрутку», я изменил свое мнение.
Вот контрольный список, предоставленный Адрианом, с которым стоит свериться перед началом работы над созданием бесконечной прокрутки.
Может ли пользователь нажать «назад» и вернуться в то же место?
Существует ли переходы при которых JavaScript дает сбой?
У страницы есть футер?
Может ли пользователь клавиатуры получить доступ ко всему остальному контенту на странице?
Можете ли вы поделиться URL-адресом в определенном месте на странице?
Может ли пользователь легко перескочить на несколько «страниц», чтобы быстро перейти к содержимому намного дальше по списку?
Увеличивается ли резко объем потребляемой памяти после всего нескольких новых «страниц»?
Есть ли способ отключить автоматическую бесконечную прокрутку и использовать стандартную пагинацию?
Проводили ли вы какие-либо пользовательские тесты?
Вы были удовлетворены результатами исследований или отзывами пользователей?
У вас есть аналитика для оценки результатов?
Как пользователь экранных дикторов, я хотел испытать это на себе и нашел здесь пример доступной бесконечный прокрутки, и вот мои мысли.
Я не мог понять, есть ли футер или нет.
Экранный диктор продолжал просматривать контент, и я немного разочаровался через несколько минут. Не было конца.
Когда я нажимал сочетание клавиш ctrl+end, чтобы перейти к концу страницы, а затем использовал стрелку вверх для навигации по контенту, содержимое не отображалось на экране. Похоже, что фокус не перемещается в область отображения через этот метод. Он отлично работает при навигации в верхней части страницы с помощью стрелки вниз. (Сценарий не срабатывает с помощью Jaws! Работает, как и ожидалось, только с NVDA)
Не существует способа, с помощью которого я мог бы направить пользователя другой вспомогательной технологии в то место, где находится контент или в на определенное количество нажатий клавиш вниз, чтобы увидеть этот конкретный контент. В моем блоге отображается 5-6 постов на странице, и его легко направить.
Если требуется бесконечная прокрутка, я предпочитаю видеть кнопку «Загрузить еще», чтобы загружать новые результаты в фид. Но тогда я не знаю, сколько страниц контента доступно и сколько раз мне нужно нажимать кнопку «Загрузить еще».
Я не могу начать с того места, где я закончил. Предположим, что на 30-ом посте я покинул сайт, мне нужно прокрутить все 30 постов, чтобы перейти к этому контенту.
Каждая область статьи снабжена tabindex=0, это дополнительные нажатия кнопки табуляции для пользователей вспомогательной технологии и клавиатуры. Не идеально, но терпимо.
Бесконечная прокрутка более отвлекает внимание на мобильных устройствах, поскольку она зависит от касания.
Хотя бесконечная прокрутка может быть доступна для людей, использующих программы чтения с экрана, с помощью ARIA Roles, States & Properties, это не лучший пользовательский интерфейс для других пользователей.
Автор: Raghavendra Satish Peri
Источник: https://www.digitala11y.com/
Редакция: Команда webformyself.