N.C*_*ian 1 keyboard-events angular-material angular
我想监听角度材料表上的键盘事件来操作选定的行。我尝试过使用该指令:
@Directive({
selector: '[keyDownAction]'
})
export class KeyDownDirective {
constructor() {
}
@HostListener('keydown', ['$event'])
handleClick(event: Event) {
console.log(event);
}
}
Run Code Online (Sandbox Code Playgroud)
主持人聆听:
host: { '(keydown)': 'hotkeys($event)' },
Run Code Online (Sandbox Code Playgroud)
并直接:
<mat-row *matRowDef="let row; columns: displayedColumns; let i=index"
[focus]="selectedRow==i"
(click)="clickOnRow(row, $event, i)"
(dblclick)="dblClickOnRow(row, $event, i)"
(keydown)="keyDownFunction($event)"
>
Run Code Online (Sandbox Code Playgroud)
click 和 dblclick 工作的地方。
有人知道解决方法吗?
我知道这是一个很晚的答案,但对于这个问题的未来发现者......
任何不是属性的东西都<input>需要该tabindex属性才能keydown触发事件。任何索引号都可以。只需将您的代码更改为...
<mat-row *matRowDef="let row; columns: displayedColumns; let i=index"
tabindex=0
[focus]="selectedRow==i"
(click)="clickOnRow(row, $event, i)"
(dblclick)="dblClickOnRow(row, $event, i)"
(keydown)="keyDownFunction($event)"
>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2417 次 |
| 最近记录: |