【问题标题】:How to disable a key when a button is focused如何在按钮获得焦点时禁用键
【发布时间】:2019-01-02 23:48:30
【问题描述】:

如何在按钮聚焦时禁用向上箭头键并在按钮未聚焦在angular2时启用它? 例如:

在html中:

<button type="button" (focus)="disableUpArrowKey()">

在脚本中:

disableUpArrowKey(){
    //??
}

【问题讨论】:

    标签: angular event-handling keyboard-events dom-events


    【解决方案1】:

    绑定keydown 并调用事件的preventDefault。

    html:

    <button (keydown)="onKeydown($event)">Button</button>
    

    ts:

    ...
    onKeydown(event: KeyboardEvent) {
      if (event.key === 'ArrowUp') {
        event.preventDefault()
      }
    }
    ...
    

    堆栈闪电战:https://stackblitz.com/edit/angular-xmzct5

    【讨论】:

    • 上述方案中如何检查元素是否聚焦?
    • 该事件仅在按钮获得焦点时发生
    猜你喜欢
    • 2016-11-11
    • 1970-01-01
    • 2010-09-14
    • 1970-01-01
    • 2021-05-21
    • 2016-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多