Есть ли способ написать скрипт greasemonkey для регистрации горячих клавиш? - PullRequest
2 голосов
/ 07 мая 2010

Я использую приложение Wiki, которое имеет кнопки для отступа и отступа элементов списка. Я хотел бы написать скрипт greasemonkey для захвата Ctrl + M и Ctrl + Shift + M для отступа и отступа соответственно. Возможно ли это?

Ответы [ 3 ]

2 голосов
/ 07 мая 2010

Да, возможно, я использовал сценарии, которые раньше использовали горячие клавиши. Я не знаком с написанием сценариев greasemonkey, но, поскольку это всего лишь JavaScript, я считаю, что вы можете использовать jQuery и такой плагин, как этот http://plugins.jquery.com/project/hotkeys. Используя этот плагин, делать то, что вы хотите, - просто

$(document).bind('keydown', 'Ctrl+M', fn);

0 голосов
/ 08 мая 2010

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

0 голосов
/ 07 мая 2010

Вы, вероятно, можете сделать это довольно легко. Вы должны добавить прослушиватели событий для ввода (textarea?). Вот тестер событий, чтобы вы могли выяснить, какие свойства и значения событий клавиатуры вы ищете: http://unixpapa.com/js/testkey.html

Например, control-shift-M дает вам это событие keyup в Firefox:

keyup     keyCode=77 (M)    which=77 (M)    charCode=0        
          keyIdentifier=undefined keyLocation=undefined
          shiftKey=true ctrlKey=true altKey=false metaKey=false
...