Blockly > IFocusableNode > getFocusableElement
เมธอด IFocusableNode.getFocusableElement()
แสดงผลองค์ประกอบ DOM ที่ขอรับโฟกัสได้อย่างชัดเจน
สำคัญ: โปรดทราบว่าองค์ประกอบนี้ควรมีลักษณะที่มองเห็นได้ในหน้าเว็บ เนื่องจากทั้งจะมีการโฟกัสอย่างชัดเจนและมีการเปลี่ยนรูปแบบตามสถานะโฟกัสปัจจุบัน (เช่น เบลอ โฟกัสที่ใช้งานอยู่ และโฟกัสแบบพาสซีฟ) องค์ประกอบจะมีรูปแบบใดรูปแบบหนึ่งต่อไปนี้แนบอยู่ (หากไม่มีรูปแบบแสดงว่าเบลอ/ไม่ได้โฟกัส) - blocklyActiveFocus - blocklyPassiveFocus
องค์ประกอบที่แสดงผลต้องมีรหัสที่ถูกต้องด้วย และรหัสนี้ควรไม่ซ้ำกันในทั้งหน้า หากไม่มีรหัสที่ไม่ซ้ำกันอย่างถูกต้อง อาจส่งผลให้การพยายามโฟกัสโหนดหนึ่ง (เช่น ผ่านการคลิกเมาส์) ทำให้ FocusManager โฟกัสโหนดอื่นที่มีรหัสเดียวกันแทน
องค์ประกอบที่ส่งคืนต้องมองเห็นได้หากมีการโฟกัสโหนดผ่าน FocusManager.focusNode() หรือ FocusManager.focusTree() ระบบอนุญาตให้ซ่อนองค์ประกอบจนกว่าจะมีการเรียกใช้ onNodeFocus() หรือซ่อนด้วยการเรียกใช้ onNodeBlur()
คาดว่าองค์ประกอบที่ส่งคืนจริงจะไม่เปลี่ยนแปลงตลอดอายุของโหนด (กล่าวคือ คุณสมบัติขององค์ประกอบอาจเปลี่ยนแปลงได้ แต่ไม่ควรส่งคืนองค์ประกอบใหม่) นอกจากนี้ องค์ประกอบที่ส่งคืนจะมีแอตทริบิวต์ tabindex ที่เขียนทับตลอดวงจรของโหนดและ FocusManager นี้
หากโหนดต้องมีความสามารถในการโฟกัสโดยตรงโดยไม่ต้องโฟกัสผ่าน FocusManager ก่อน โหนดนั้นจะต้องตั้งค่าดัชนีแท็บของตัวเอง
ลายเซ็น:
getFocusableElement(): HTMLElement | SVGElement;
การคืนสินค้า:
HTMLElement | SVGElement
HTMLElement หรือ SVGElement ซึ่งทั้ง 2 อย่างสามารถรับโฟกัสและแสดงภาพเป็นโฟกัสที่ใช้งานอยู่หรือโฟกัสแบบพาสซีฟสำหรับโหนดนี้