blockly > IFocusableNode > getFocusableElement
Phương thức IFocusableNode.getFocusableElement()
Trả về phần tử DOM có thể được yêu cầu rõ ràng để nhận tiêu điểm.
LƯU Ý QUAN TRỌNG: Xin lưu ý rằng phần tử này dự kiến sẽ xuất hiện trên trang vì phần tử này sẽ được lấy tiêu điểm một cách rõ ràng và có kiểu thay đổi tuỳ thuộc vào trạng thái tiêu điểm hiện tại (tức là bị làm mờ, được lấy tiêu điểm chủ động và được lấy tiêu điểm thụ động). Phần tử sẽ có một trong hai kiểu được đính kèm (nếu không có kiểu nào thì tức là bị mờ/không được lấy tiêu điểm): – blocklyActiveFocus – blocklyPassiveFocus
Phần tử được trả về cũng phải có một mã nhận dạng hợp lệ được chỉ định và mã nhận dạng này phải là duy nhất trên toàn bộ trang. Nếu không có một mã nhận dạng riêng biệt phù hợp, thì việc cố gắng lấy tiêu điểm một nút (chẳng hạn như thông qua một lượt nhấp chuột) có thể dẫn đến việc một nút khác có cùng mã nhận dạng thực sự được FocusManager lấy tiêu điểm.
Phần tử được trả về phải hiển thị nếu nút từng được lấy tiêu điểm thông qua FocusManager.focusNode() hoặc FocusManager.focusTree(). Phần tử có thể bị ẩn cho đến khi onNodeFocus() được gọi hoặc bị ẩn khi gọi onNodeBlur().
Phần tử thực tế được trả về dự kiến sẽ không thay đổi trong suốt vòng đời của nút (tức là các thuộc tính của phần tử có thể thay đổi nhưng không bao giờ được trả về một phần tử mới). Ngoài ra, phần tử được trả về sẽ bị ghi đè tabindex trong suốt vòng đời của nút này và FocusManager.
Nếu một nút yêu cầu khả năng được lấy tiêu điểm trực tiếp mà không cần được lấy tiêu điểm thông qua FocusManager trước, thì nút đó phải đặt chỉ mục thẻ riêng.
Chữ ký:
getFocusableElement(): HTMLElement | SVGElement;
Trả lại:
HTMLElement | SVGElement
HTMLElement hoặc SVGElement có thể nhận tiêu điểm và được biểu thị bằng hình ảnh là đang được lấy tiêu điểm chủ động hoặc thụ động cho nút này.