blockly > IFocusableNode > canBeFocused
IFocusableNode.canBeFocused() 메서드
이 노드가 포커스를 허용하는지 여부를 나타냅니다. 이 메서드가 false를 반환하면 다른 IFocusableNode 메서드는 호출되지 않습니다.
이 함수의 구현이 노드의 전체 기간에 걸쳐 반환 값을 동적으로 변경하는 경우 특정 환경 조건이 이 노드의 DOM 요소의 포커스 가능성에 영향을 줄 수 있으므로 (예: 요소의 tabindex가 양수인지 0인지 여부) 특별한 주의가 필요합니다. 또한 노드가 포커스를 보유하고 있는 동안 true 값에서 false 값으로 변경해도 노드의 현재 포커스나 FocusManager의 내부 상태가 즉시 변경되지 않으므로 나중에 포커스가 해제될 때 일부 노드 함수가 호출될 수 있습니다 (이전에는 포커스가 설정될 때 포커스를 설정할 수 있는 것으로 간주되었기 때문).
구현은 일반적으로 포커스 고려사항으로 인해 이 노드를 건너뛰어야 하는 상황이 아니라면 항상 여기에서 true를 반환해야 합니다. 사용 중지, 읽기 전용, 순수한 시각적 장식, 이 인터페이스를 구현해야 하는 시각적 표현이 없는 노드 (예: 상위 인터페이스가 이 인터페이스를 확장함)를 예로 들 수 있습니다. 특히 스크린 리더를 사용하는 경우 사용 중지된 요소나 읽기 전용 요소도 사용자에게 조직 컨텍스트를 제공하는 데 관련이 있을 수 있으므로 노드에 포커스를 설정할 수 있는지 여부를 결정할 때는 접근성 권장사항을 염두에 두세요.
서명:
canBeFocused(): boolean;
반환:
부울
FocusManager에서 이 노드에 포커스를 설정할 수 있는지 여부입니다.