Accesskeys: Проклятие или Благословение?
В течение долгого времени, я полагал, что Accesskeys были определенным решением, если Вы хотели обеспечить основанная на клавиатуре сокращенная система в пределах вебсайта. WCAG 1.0 руководящих принципа определяют:
"Keyboard доступ к активным элементам страницы важен для многих пользователей, которые не могут использовать обращение устройство. Пользовательские агенты могут включать особенности, которые позволяют пользователям связывать удары клавиатуры с определенными действиями. HTML 4.01 позволяет довольным разработчикам определять сокращения клавиатуры в документах через "
accesskey" attribute."
По общему признанию, это не заповедь — однако, это - конечно разумно сильная рекомендация! Однако, хотя признак Accesskey - единственный HTML родные средства обеспечения сокращения клавиатуры, , я недавно узнал несколько неотразимых причин избежать этого 1 .
Джон Фолайот WATS.ca написал многочисленный статьи об этих проблемах — таким образом я просто подведу итог здесь. Корень этих проблем - то, что программное обеспечение, включая стандартное программное обеспечение браузера и программное обеспечение чтения экрана, обычно оборудуется рядом стандартные сокращения клавиатуры.
проблема должна начать становиться ясной, теперь. Как может использование разработчика веб-страниц техника, которая непосредственно ниспровергает нормальное поведение программного обеспечения пользователя и требования быть "accessible"? Рассмотрите это:
Алан, который является слепым и использующим Internet Explorer 6, посещает Ваш вебсайт, в поисках некоторой части важной информации. Алан очень искусен со своим программным обеспечением - ОТЧИТЫВАЕТ ® покажите на экране читателя для Windows. Алан понимает, что это не является правильным участком для его информации, и поражает ALT+D - который является методом ЧЕЛЮСТЕЙ стандарта, чтобы возвратиться к строке поиска - внезапно, он оказывается в Вашей странице на далматинце. Так как Алан не может добраться до строка поиска, используя его обычный метод, он не знает, что сделать! Он должен закрыть ЧЕЛЮСТИ и начало.
, Если бы я был Аланом, я был бы довольно расстроен. Я потратил впустую изрядное количество времени! Столько, сколько я понимаю желание большинство владельцев вебсайта, чтобы держать людей на их участке - это кажется небольшой противоположностью.
Этот пример относится к Internet Explorer 6 и ранее. Опыт с другим программным обеспечением браузера будет различен; хотя не обязательно
лучше. Internet Explorer 7, например, использует Alt+keypress комбинация, чтобы сосредоточить курсор
на соответствующей связи. Это предотвращает внезапное и неожиданное изменение в местоположении, но не решает проблему, что нормальное сокращение клавиатуры больше не годно к употреблению.
Вы никогда не должны предполагать, что любой данный пользователь использует любое данное программное обеспечение. Пример - совершенно действительная демонстрация того, что может пойти не так, как надо с accesskeys.
Имеют в виду, что это не предназначено, чтобы подразумевать, что эта проблема относится ко всем устройствам: просто то, что это может потенциально быть проблема.
На ранних участках, я вышел из своего способа удостовериться, что у каждой главной страницы был уникальный accesskey -
теперь, я понимаю, что я, возможно, причинил беспокойство самым людям, которые были предназначены, чтобы извлечь выгоду. Afterall,
accesskey признаки предназначены для визуально инвалид, прежде всего - и они - самые люди, которые являются больше
вероятно, чтобы быть регулярными пользователями сокращений клавиатуры на их собственном программном обеспечении.
Этот весь предмет подходил как часть обсуждения по
Врожденные и приобретенные болезни, лечение детей: педиатр, педиатрия. GAWDS список рассылки. К счастью, есть большое количество очень талантливых разработчиков
участвующий в этом списке. Два из них, Лимон Gez JuicyStudio и
Рич Педли объединились, чтобы создать PHP класс, который дает пользователям
способность выбрать accesskey s для себя.
Этот инструмент берет потребность выбрать ключи доступа из рук разработчика веб-страниц и откладывает ее в руках пользователя - где она принадлежит.
- Gez Лимон: Определенные пользователем Ключи Доступа ( PHP )
- Gez Лимон: Определенные пользователем Ключи Доступа ( ГАДЮКА )
Примечания:
1. есть другие альтернативы, такие как использование JavaScript, чтобы программировать сокращения клавиатуры.
Однако, они "solutions" имейте те же самые проблемы как accesskey s, в дополнение к зависимости
на стороне клиента scripting, чтобы функционировать.
