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

Каждый браузер имеет различные собственные сочетания клавиш. Которые свободны / безопасный использовать, если мы хотим добавить некоторый пряный материал к нашему веб-приложению?


Дополнительная информация:

Я не должен особенно быть нацелен на каждый браузер. Эти пять крупных фирм каждый достаточен. Например, Opera обычно использует Ctrl + ключ, оставляя почти весь Высокий звук + ключ "свободный связать".

Поскольку различные браузеры используют другой основной модификатор (Ctrl в Opera), я могу легко предположить использовать другой ключ для привязки ярлыков на. т.е. Высокий звук + Ключ в Opera, Ctrl + Ключ в браузере 2, Ctrl + Высокий звук в браузере 3, и т.д.

20
задан Raine Revere 23 November 2019 в 17:10
поделиться

6 ответов

Если вам нужны только сочетания клавиш вне элементов формы, имеющих фокус, я бы использовал простые буквы (нет Ctrl / Alt / Shift / и др.). Обычные символы важны для браузера только в том случае, если элемент формы имеет фокус. В противном случае их игнорируют.

Например, если у вас есть содержимое, разбитое на страницы, P может быть предыдущим, а N - следующим.

(Не уверен, что это полностью решит вашу проблему, потому что это не сработает, когда элемент формы находится в фокусе.)


На основании вашего комментария (фокус будет внутри текстового поля), я бы предложил одну букву для каждого действия выбирается разная комбинация Ctrl / Alt / Shift для каждого браузера. Большинство людей используют только один браузер, поэтому для каждого пользователя не составляет большого труда выучить только свою собственную комбинацию.

Так, например, Ctrl + Alt + N в одном браузере может быть таким же, как Alt + N в другом.

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

Вот что я нашел в основном доступным на данный момент:

OS X    - FF/Safari/Chrome - ctrl-[key]
Windows - FF/IE            - ctrl-alt-[key]
9
ответ дан 30 November 2019 в 00:22
поделиться

Короткий ответ:

К разочарованию, наше исследование обнаружило, что все ключи, кроме трех, были ранее "заявлены" одной технологией или другой:

* AccessKey / (косая черта)
* AccessKey (обратная косая черта)
* AccessKey ] (правая квадратная скобка)

Это объясняется в этой статье:

Эта статья Википедии дает хорошее общее введение в эту тему:

5
ответ дан 30 November 2019 в 00:22
поделиться

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

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

В идеале, вы должны сделать ярлык как можно более интуитивным (Ctrl + X, или Alt + X и т.д.), не вмешиваясь в работу браузера.


Редактировать: В качестве альтернативы, если вам удобно переопределять функциональность по умолчанию, можно использовать следующее: http://www.openjs.com/scripts/events/keyboard_shortcuts/

Когда вы указываете сочетание клавиш, браузер будет игнорировать это сочетание, и вы сможете использовать его в своем приложении (как это делает gmail, например, с Ctrl + S).

3
ответ дан 30 November 2019 в 00:22
поделиться

Программы чтения с экрана (JAWS, NVDA, ...) уже используют всю клавиатуру, включая мертвые клавиши (я немного преувеличиваю, но он конкурирует с Adobe Photoshop по количеству сочетаний клавиш использовал).

Поэтому, если вы хотите поддерживать программы чтения с экрана и другие вспомогательные технологии, вам следует использовать ARIA и особенно role = "application" . Это позволит избежать конфликтов между вашим приложением и режимом работы программ чтения с экрана по умолчанию на веб-страницах. Один недостаток в том, что вам нужно прочитать десятки и десятки страниц ...

Введение в WAI / ARIA (traduction en français) (наш общий родной язык, не правда ли, SDZ / zC?;) )

РЕДАКТИРОВАТЬ: Один из способов разрешения конфликтов - позволить пользователю определять и изменять свои собственные ярлыки.

1
ответ дан 30 November 2019 в 00:22
поделиться

Для пользователей Mac вы определенно хотите использовать Ctrl, поскольку Alt используется для ввода множества различных символов, а command - это клавиша действия по умолчанию, которую используют браузеры. Я бы также избегал комбинаций, использующих основные сочетания клавиш в стиле emacs (некоторые пользователи используют их как Ctrl + K, которые SO умудряется испортить ;), хотя они менее известны и поэтому могут быть использованы.

Для Windows это сложнее - и у меня нет win-бокса, чтобы проверить это самому.

2
ответ дан 30 November 2019 в 00:22
поделиться

Для практического решения скопируйте Google. У них есть сочетаний клавиш в Gmail (и, возможно, в других продуктах), которые неплохо справляются с обходом сочетаний клавиш в браузере.

11
ответ дан 30 November 2019 в 00:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: