2017-11-30 17 views
0

HTML DOM의 활성 요소에 포커스 스타일을 설정하는 지시문이 있습니다. 지금은 문제가 없지만 탭 단추를 누를 때만이 논리를 수행해야합니다.* focus * HostListener에 대한 keyCode를 얻는 방법

@HostListener('focus', ["$event"]) 
    onFocus(event: KeyboardEvent) { 
     console.log("Focus called from HostListener"); 
    } 

그리고 키 코드 개체 속성이벤트에 표시되지 않습니다.

이 이벤트에 대해이 keyCode를 얻으려면 어떻게해야합니까?

답변

0

HTML :

<input (keydown.Tab)="onKey($event)"> 

TS : 당신의 HTML에서

onKey(event:any){ 
//Do logic 
} 
+0

괜찮습니다. 그러나 @HostListener ('focus', [ "$ event"])에서 keyCode를 감지해야합니다. 그것이 가능하다면. –

+0

나는 이것을 어떻게 달성하고 싶은지 모르겠다.이 이벤트는 집중할 때, 키를 누를 때가 아니라, 두 개의 다른 이벤트이고, 같은 이벤트 감지에 결합하지 않을 때이다. 키탭 감지로 내 대답을 편집합니다. –

0

간단한 넣어 그것을 :

<input (focus)="isFocused($event)" /> 

또는 없앱 :

<input (blur)="onBlur($event)" /> 

탭을 감지하려는 경우 :

<input (input)="onInput($event)" /> 

물론 둘을 결합 할 수 있습니다. 그러나 입력에 탭하면 (포커스)이 트리거됩니다.