Я создаю редактор с настраиваемыми привязками клавиш для управления его поведением. Это сработало хорошо, но если я установил шаблон привязки клавиш, который уже используется браузером, мои определенные привязки клавиш игнорируются браузером.

Список привязок клавиш браузера: https : //www.howtogeek.com/114518/47-keyboard-shortcuts-that-work-in-all-web-browsers/

У меня вопрос, как я могу переопределить эти сочетания клавиш? Можно ли сделать это с помощью Javascript?

0
Hugo Sum 19 Июл 2020 в 06:18

1 ответ

Лучший ответ

С помощью прослушивателя событий или атрибута onkeydown вы можете условно настроить таргетинг на комбинации key / keyCode, metaKey (команда / окна), shiftKey, altKey и ctrlKey:

window.addEventListener("keydown",(e)=>{
  const {key, keyCode, metaKey, shiftKey, altKey, ctrlKey} = e; 
  if(key === "c" && (ctrlKey || metaKey)){
    e.preventDefault();
    console.log("copy prevented");
  }
});
HIGHLIGHT AND TRY TO COPY THIS TEXT WITH CTRL + C or COMMAND + C
0
Pavlos Karalis 19 Июл 2020 в 05:24