Многие веб-сайты, особенно все, что связано с редактированием текста (этот сайт также виновен), крадут сочетания клавиш, обычно используемые для управления Firefox, и заставляют их делать что-то еще. Это полностью бесит, когда я нажимаю что-то вроде Cmd-номера, Cmd-L, Cmd-T или Cmd-K, и это не делает то, что я хочу. Могу ли я сделать это остановить?
На самом деле, было бы лучше, если бы я мог запретить кражу всех сочетаний клавиш Cmd- *. Я никогда не видел, чтобы они использовали что-то полезное. Является ли это возможным?
firefox
keyboard-shortcuts
website
выделывать кожу без дубления
источник
источник
CTRL-;
входит в режим быстрого доступа и выделяет все команды, отображаемые на экране, с помощью доступных ярлыков. Каждый ярлык является комбо, поэтому новый регистрCTRL-; N
и редактированиеCTRL-; E
. Очень легко привыкнуть и ноль конфликтов. Я хотел бы, чтобы больше сайтов использовали что-то подобное, потому что это проще для пользователя и не отменяет ярлыки браузера. Жаль, что SuperUser не делает этого, потому что он от тех же людей, что и FogBugz.Ответы:
Благодаря новой
@run-at
собственности Greasemonkey , это теперь возможно!Я черпал вдохновение из этого сценария и этого сценария, чтобы объединить их в пользовательский сценарий, который успешно перехватывает сочетания клавиш Ctrl+ Tи Ctrl+ S. Я тестировал в Firefox 17 ESR и Firefox 25.
источник
e.ctrlKey
дляe.cmdKey
иe.cmdKey && e.shiftKey
вернуть большую часть своих ярлыков браузера.9
в массив кодов клавиш. Спасибо!Через 11 лет после того, как ошибка была обнаружена, Mozilla наконец-то приступила к работе над этим популярным запросом, и похоже, что теперь он работает нормально (протестировано в Firefox 66.0.3 / Ubuntu).
(Спасибо @PerJohansson за то, что они указали, что они значительно усложнили настройку после FF 59.)
Вы можете отключить ярлыки сайта, выполнив следующие действия:
(i)
значок в строке адреса>
) справа от элемента состояния «Соединение».More Information
внизу. Нажмите на это, и вы, наконец, получите кPage Info
диалогу.Permissions
вкладку и настройтеOverride Keyboard Shortcuts
параметры.Вот несколько недавних (май 2019) снимков экрана для каждого шага:
Если вам интересна история этого исправления, вот соответствующие билеты Mozilla: https://bugzilla.mozilla.org/show_bug.cgi?id=380637 и https://bugzilla.mozilla.org/show_bug.cgi ? ID = 1445942
источник
about:config
вариант изменить по умолчанию? Я хочу, чтобы все сайты не могли подключиться к моей клавиатуреОбширные исследования показывают, что в текущей версии Firefox (3.6.x) это невозможно - все конфликты связывания ключей разрешаются с приоритетами: Система> Веб-сайт> Firefox - довольно глупый порядок. Кажется, ни один из аддонов, которые я пробовал, не может это исправить.
Возможно, это станет возможным в будущих версиях, но прямо сейчас ответ - невозможно.
источник
Поскольку проблемы, по-видимому, связаны с событиями клавиатуры JavaScript, которые крадут нажатия клавиш, не будет ли возможно создать сценарий JavaScript (который будет использоваться через Greasemonkey), который отменяет привязку всех этих событий клавиатуры, возвращая, таким образом, правильное использование каждого ярлыка для браузера?
Я не уверен, насколько это возможно, но кто-то с большим опытом JavaScript / Greasemonkey может помочь (возможно, стоит спросить о SO).
источник
Проблема заключается в том, что на любой странице может быть запущен Javascript, который устанавливает обработчик событий для захвата событий нажатия клавиш, а элементы управления Firefox javascript недостаточно детализированы, чтобы остановить его, не нарушая другие функции javascript.
Единственный способ предотвратить это - отключить Javascript (Инструменты -> Параметры, вкладка [Содержимое], снимите флажок Включить JavaScript ). Или вы можете отключить Javascript для каждого сайта с таким расширением, как NoScript.
Firefox позволяет предотвращать некоторые виды использования Javascript, такие как перемещение / изменение размеров окон, изменение или отключение контекстного меню и т. Д .; но ничто не мешает веб-сайтам перехватывать события клавиатуры.
Возможно есть расширение, которое дает этот уровень контроля - я не знаю ни одного.
Есть опции Javascript , но это расширение больше не обновляется.
источник
Вероятно, что сторонние плагины фокусируются из главного окна браузера. В этом случае ввод с клавиатуры (кроме прерываний) будет перехвачен плагином. Если вам это не нравится, вы всегда можете удалить нарушающий плагин (-ы) [я бы предположил, что он, вероятно, мигает].
источник
После многочисленных испытаний в различных браузерах легче перехватывать клавиши, когда они нажаты (не нажаты), потому что некоторые из этих «встроенных в приложение клавиш» трудно перехватить с помощью события «нажатие клавиши».
Я придумал этот сценарий, который совместим с несколькими браузерами (я не тестировал IE для Microsoft). Обратите внимание, что браузеры возвращают разные коды для некоторых ключей. В моем случае я хотел предотвратить Ctrl + P.
Клавиша «P» на Chrome выглядит так
e.keyCode == 80
, как на Opera, она естьe.charCode == 16
, а на Firefox она есть.e.charCode == 112
Я использовал jQuery.
источник
Если вы хотите отключить любую клавишу ctrl, принимаемую веб-страницей, просто отфильтруйте все коды букв из az (основываясь на ранее принятом и рабочем ответе)
источник
Возможно, вы можете использовать Autohotkey или Autoit, одну из этих программ, и если вы можете делать комбинации горячих клавиш и связывать их с функциями Firefox, скажем,
Ctrl-; T
на новую вкладкуCtrl-; N
в новое окно и так далее.Я не знаю, как использовать Autohotkey или Autoit, поэтому кто-то еще должен будет убедиться, что это может работать, я предлагаю это только как потенциальную идею.
источник
Текущая версия Firefox позволяет нам «отключить контекстное меню JavaScript для захвата»:
Но нет функции «отключить JavaScript, чтобы угнать горячие клавиши».
пс. Я ненавижу твиттер-сайт, его сочетания клавиш конфликтуют с моими системными сочетаниями клавиш: J, K, L, I
Я сделал запрос на функцию bugzilla.mozilla.org, пожалуйста, оставьте комментарий здесь: https://bugzilla.mozilla.org/show_bug.cgi?id=775002
источник