Доступные с клавиатуры веб-выпадающие меню? - PullRequest
7 голосов
/ 15 октября 2010

Есть ли способ создать на веб-сайтах выпадающие меню, доступные с клавиатуры?Наше текущее веб-приложение имеет стандартные всплывающие меню, но это действительно замедляет работу наших клерков по вводу данных (которые привыкли к настольным приложениям, где есть доступное с клавиатуры меню и нет необходимости использовать мышь).

Мы выяснили, как показать меню с помощью сочетания клавиш, но я не уверен, как выбрать одну из записей (например, с помощью первой буквы пункта меню, как в большинстве приложений для настольных компьютеров),

Редактировать - ссылка на сайт, который делает это, или другой тип примера, будет ДЕЙСТВИТЕЛЬНО полезна

Ответы [ 6 ]

7 голосов
/ 15 октября 2010

Вы можете использовать атрибут accesskey для тега привязки:

<a href="something.html" accesskey="s">[S]omething</a>

, но комбинация клавиш для этого отличается во всех браузерах:

  • IE : Alt + accesskey , Enter
  • FireFox : Alt + Shift + клавиша доступа
  • Опера : Shift + Esc + клавиша доступа
  • Chrome : Alt + accesskey
1 голос
/ 29 августа 2012

Попробуйте этот скрипт меню, который я создал для нашего государственного портала в Миннесоте. Он доступен с клавиатуры (клавиша табуляции для навигации по всем уровням), показывает структуру пути, по которой вы проходите вниз, и поддерживает до пяти уровней (включая верхний уровень).

Главное меню: доступное с клавиатуры меню jquery .

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

Он также имеет ограниченную сенсорную поддержку (немного глючит в iPhone / iPad), но я работаю над этим, чтобы быть более широко поддерживаемым.

1 голос
/ 15 октября 2010

Самый простой способ - добавить accesskeys к ссылкам меню.Эта функция предназначена именно для этой функции.

0 голосов
/ 15 октября 2010

Ключевые события:
http://api.jquery.com/keypress/
http://api.jquery.com/keydown/
http://api.jquery.com/keyup/

Меню CSS, вкладка доступна:
http://carroll.org.uk/sandbox/suckerfish/bones2.html

Последнийработает с использованием псевдоэлемента: focus.Я сталкивался с некоторыми оговорками с помощью метода, описанного в статье, но он работает.

Первый (набор) не требует пояснений.

0 голосов
/ 15 октября 2010

Вам нужно прослушивать нажатия клавиш, пока меню открыто, чтобы ваш код перемещал выбранную позицию.

8 = возврат, 13 = возврат, 27 = выход, 40 = вниз, 38 = вверх и т. Д. Это просто значения ASCII нажатий клавиш.

0 голосов
/ 15 октября 2010

краткий ответ - да - события javascript и jquery, инициируемые на основе данного нажатия клавиш, вероятно, будут работать лучше всего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...