html входной атрибут совместимости браузера с ключом доступа
Какие браузеры реализуют атрибут вводаaccesskey
"?
Соответствует ли поведение кросс-браузер?
Безопасно ли использовать accesskey
как просто дополнительный атрибут данных (например, "rel
" а также "rev
"иногда используются на a
тег)?
Кроме того, есть ли способ захватить "onaccesskeypress" в JavaScript? Это просто запускает событие onclick?
3 ответа
Поддержка браузера:
Все основные браузеры поддерживают accesskey
приписывать. Хотя было некоторое обсуждение того, является ли это хорошей вещью для доступности, это остается частью HTML (от HTML5).
Последовательное поведение:
Поведение одинаково только для браузеров и платформ в том смысле, что нажатие определенного набора управляющих клавиш и определенного accesskey
ключ активирует ссылку.
По определению, каждый веб-разработчик может определять ключи доступа по своему усмотрению, и не существует согласованного стандарта для общих ссылок, таких как "Перейти к основному содержанию", "Домашняя страница", "Карта сайта" и т. Д., Поэтому нет согласованности от сайта к сайту. Смотрите мои предложения ниже.
Кроме того, управляющие клавиши для доступа к этим сочетаниям клавиш отличаются от браузера к браузеру и от платформы к платформе, и иногда также происходили изменения между версиями браузера.
На странице Википедии о ключах доступа представлен список для большого числа браузеров, и он должен предоставить вам актуальный список.
Безопасный в использовании accesskey
как просто дополнительный атрибут данных:
Я не уверен, что вы подразумеваете под "безопасным". Вот пример того, как его использовать:
<a accesskey="9" href="/sitemap.html">Sitemap</a>
Персональные рекомендуемые ключи доступа:
0 - Домой
9 - Карта сайта
8 - страница доступности (список ключей)
1,2,3... - Основные элементы навигации, только верхнего уровня
accesskey
имеет довольно пятнистую реализацию. Firefox позволяет использовать любой символ в качестве accesskey
значение, в то время как Safari, кажется, допускает только числовые символы (например, на этой странице).
Следующая кнопка отображается на >
ключ доступа. Это работает в Firefox (Ctrl>, на Mac), но не в Safari.
На мой взгляд, если навигация с помощью клавиатуры необходима для вашей веб-страницы, использование JavaScript является гораздо лучшим вариантом.
Некоторые ресурсы я использовал, чтобы прийти к моим выводам.
РЕДАКТИРОВАТЬ: После немного больше экспериментов, кажется, что Safari уважает клавиши доступа, которые являются буквенно-цифровыми символами. Клавиша для их выполнения - CtrlAlt{ACCESSKEY}. Я все еще думаю, что JavaScript - лучший способ реализовать навигацию с помощью клавиатуры, но я решил добавить эту информацию для ясности.
Каждый основной браузер поддерживает accesskey (анализирует его и назначает сочетания клавиш соответственно).
Проблема в том, что управляющий ключ отличается для каждого браузера. В IE это клавиша Alt+, Firefox использует клавишу Alt+Shift+, Mac использует клавишу Ctrl+.