我试图捕获角度为2的自动完成指令的所有键盘事件 . 我已将其分为3种不同类型的事件 .
1) keyup/keydown -> space , arrow up , arrowdown , enter , escape
@HostListener('window:keyup', ['$event'])
keyDownEvent(event: KeyboardEvent) {
switch (event.code) {
// keycode 32
case "Space" :
//handle space event
break;
//keycode 38
case "ArrowUp":
//handle arrow up event
break;
//keycode 40
case "ArrowDown":
//handle arrow down event
break;
//keycode 13
case "Enter":
//handle enter
break;
//keycode 27
case "Escape":
//handle escape event
break;
default :
break;
}
}
2) blur
@HostListener('blur', ['$event'])
bluEventHandler(event: any){
}
3) input (键盘上的所有其他键除了#1和#2中提到的内容,如a-z,A-z,特殊字符等)
????
我不知道如何捕获输入事件 . 我试图将我的角度代码转换为角度2,这是它在角度1中的样子
$(this.element).bind("keydown", function (event) {
}
$(this.element).bind("input", function (event) {
}
$(this.element).bind("blur", function (event) {
}
1 回答
您可以使用相同的方式收听
input
,就像keyup
一样Plunker example