2017-12-15 19 views
3

<div tabindex="-1"> 요소에 focusout 청취자가있을 수 있습니다.포커스 손실 안쪽과 바깥 쪽을 구분합니까?

페이지의 다른 요소 (또는 아무 것도 아닌 요소)로 포커스가 변경 될 때마다 이벤트가 실행됩니다.

그러나 포함 된 브라우저 탭이나 창이 포커스를 잃을 때도 실행됩니다. 이는 여러 가지로 인해 발생할 수 있습니다 : ALT+TAB, WINDOWS 키, 사용자가 다른 응용 프로그램을 마우스로 클릭하거나 개발자 콘솔을 여는 사용자 등이 원인 일 수 있습니다.

FocusEvent을 처리 할 때 페이지 내 또는 페이지 외부에서 초점 변경으로 인해 발생하는 이벤트를 구별 할 수있는 방법이 있습니까?

별도로, FocusEvent.relatedTarget을 사용할 수 있습니다. 그러나 포커스가 페이지 외부로 나가는 경우와 때로는 페이지 내부의 다른 부분 (즉 포커스를 '받을'수없는 요소)으로 이동하는 경우 모두 null 인 것으로 보입니다. UIEvent.sourceCapabilities도 사용할 수있는 것 같습니다, 그리고 안정적으로가는 것 같습니다 null 페이지 전체가 초점을 잃을 때,하지만 나는이 문제를 해결하기 위해 얼마나 신뢰할 수 있을지 확신 할 수 없습니다.

도움을 주시면 감사하겠습니다.

답변