blockly > FocusManager > takeEphemeralFocus

เมธอด FocusManager.takeEphemeralFocus()

จับโฟกัสขององค์ประกอบที่เฉพาะเจาะจงไว้ชั่วคราวจนกว่าจะมีการเรียกใช้แลมบ์ดาที่แสดงผล ซึ่งคาดว่าจะมีประโยชน์อย่างยิ่งสำหรับขั้นตอน UI ที่เปลี่ยนแปลงอย่างรวดเร็ว เช่น กล่องโต้ตอบ

สำคัญ: *ต้อง* เรียกใช้แลมบ์ดาที่แสดงผล มิฉะนั้นโฟกัสอัตโนมัติจะไม่ทำงานที่ใดก็ได้ในหน้าเว็บ เราขอแนะนําอย่างยิ่งให้เชื่อมโยงการเรียกใช้ Lambda กับการปิด UI ที่เกี่ยวข้อง เพื่อให้ UI ปิดและคืนค่าอินพุตอัตโนมัติหากมีการเปลี่ยนอินพุตด้วยตนเองเป็นองค์ประกอบที่อยู่นอก UI ชั่วคราว โปรดทราบว่าต้องเรียกใช้ Lambda นี้เพียงครั้งเดียว และการเรียกใช้ครั้งต่อๆ ไปจะทำให้เกิดข้อผิดพลาด

โปรดทราบว่าตัวจัดการจะติดตามสัญญาณอินพุต DOM ต่อไปแม้ว่าโฟกัสชั่วคราวจะทำงานอยู่ แต่จะไม่เปลี่ยนสถานะโหนดจนกว่าจะมีการเรียกใช้ Lambda ที่แสดงผล นอกจากนี้ บริบทโฟกัสชั่วคราวจะมีได้เพียง 1 รายการเท่านั้นที่ใช้งานอยู่ในช่วงเวลาหนึ่งๆ (การพยายามเปิดใช้งานมากกว่า 1 รายการพร้อมกันจะทำให้เกิดข้อผิดพลาด)

ลายเซ็น:

takeEphemeralFocus(focusableElement: HTMLElement | SVGElement): ReturnEphemeralFocus;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
focusableElement HTMLElement | SVGElement

การคืนสินค้า:

ReturnEphemeralFocus