Как записать событие keyup для shift / meta в macOS в JavaScript - PullRequest
0 голосов
/ 03 марта 2019

У меня есть элемент, который мне нужно скрыть / показать в зависимости от того, удерживает ли пользователь какую-либо из этих клавиш:

  • команда (также называемая "мета") клавиша
  • клавиша Shift

Однако Я не могу перехватить событие keyup .

Это моя текущая реализация:

window.addEventListener('keydown', e => {
    const { keyCode, metaKey, shiftKey } = e
    const onlyMeta = ((keyCode === 91 || keyCode === 93) && metaKey)
    const onlyShift = (keyCode === 16 && shiftKey)
    if (onlyMeta) store.state.holdingMeta = true
    if (onlyShift) store.state.holdingShift = true
})
window.addEventListener('keyup', e => {
    const { keyCode, metaKey, shiftKey } = e
    const onlyMeta = ((keyCode === 91 || keyCode === 93) && metaKey)
    const onlyShift = (keyCode === 16 && shiftKey)
    if (onlyMeta) store.state.holdingMeta = false
    if (onlyShift) store.state.holdingShift = false
})
Клавиша

не распознается ни для клавиш shift, ни для meta.

...