จัดการ tabindex แบบเลื่อนตำแหน่งในวิดเจ็ต
ให้ปุ่มลูกศรย้ายตำแหน่งภายในตัวควบคุมแบบองค์ประกอบรวม
จัดการ tabindex แบบเลื่อนตำแหน่งในวิดเจ็ต เป็นบทเรียน Web Accessibility Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Web Accessibility Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Web Accessibility Academy มีบทเรียนทั้งหมด 4 บทเรียน
จุดหยุดเดียวสำหรับวิดเจ็ตทั้งชุด
ในแถบเครื่องมือหรือกลุ่มปุ่มตัวเลือก การกด Tab ควรไปถึงวิดเจ็ตเพียงครั้งเดียว ไม่ใช่ไปทุกไอเท็ม Roving tabindex คือรูปแบบที่ทำให้ทำเช่นนี้ได้
แนวคิดหลัก
ในแต่ละครั้งจะมีเพียงหนึ่งไอเท็มที่มี tabindex="0" ไอเท็มอื่นทั้งหมดจะได้รับ tabindex="-1" ดังนั้น Tab จะเข้าสู่กลุ่มที่จุดเดียว
การตั้งค่าเริ่มต้น
เมื่อโหลดหน้า ให้กำหนด tabindex="0" ให้ไอเท็มแรกหรือไอเท็มที่เลือกอยู่ และตั้งค่าที่เหลือเป็น tabindex="-1" นี่คือสถานะพักของกลุ่ม
<button tabindex="0">Bold</button>
<button tabindex="-1">Italic</button>ใช้ปุ่มลูกศรเพื่อเลื่อนภายใน
เมื่อโฟกัสอยู่ภายในกลุ่ม ผู้ใช้จะเลื่อนไปมาระหว่างไอเท็มด้วย ปุ่มลูกศร ไม่ใช่ Tab โดย Tab ยังคงใช้เพื่อออกจากวิดเจ็ตทั้งชุด
ขั้นตอนการเลื่อนโฟกัส
เมื่อกดปุ่มลูกศร ให้ทำสองอย่าง: ตั้งค่าไอเท็มเดิมเป็น -1 และไอเท็มใหม่เป็น 0 จากนั้นเรียกใช้ focus() กับไอเท็มใหม่ 🧭
old.tabIndex = -1;
next.tabIndex = 0;
next.focus();เหตุใดจึงมีศูนย์เพียงหนึ่งค่า
การคง tabindex="0" ไว้เพียงรายการเดียวทำให้ Tab ไปยังไอเท็มที่ผู้ใช้ใช้ล่าสุดเสมอ ดังนั้นการกลับมายังวิดเจ็ตจึงเป็นธรรมชาติ
ทำตามรูปแบบ APG
คู่มือแนวทางการสร้างของ ARIA ระบุปุ่มที่แน่นอนสำหรับวิดเจ็ตแต่ละชนิด โปรดทำตาม แผนผังแป้นพิมพ์ แทนการคิดขึ้นเอง
การวนกลับแบบเลือกใช้
วิดเจ็ตจำนวนมาก วนการเคลื่อนที่ด้วยปุ่มลูกศร: เมื่อกดปุ่มขวาที่รายการสุดท้าย ระบบจะวนกลับไปยังรายการแรก โปรดตรวจสอบ APG ว่ารูปแบบของคุณควรมีการวนหรือไม่
Home และ End ก็ใช้ได้เช่นกัน
วิดเจ็ตแบบประกอบมักเพิ่มปุ่ม Home และ End เพื่อข้ามไปยังรายการแรกและรายการสุดท้าย ซึ่งเป็นรายละเอียดเล็ก ๆ ที่ช่วยให้การนำทางรวดเร็วยิ่งขึ้น
roving กับ aria-activedescendant
roving tabindex จะย้ายโฟกัสจริงของ DOM ส่วนทางเลือกอย่าง aria-activedescendant จะคงโฟกัสไว้ที่คอนเทนเนอร์ และชี้ไปยังรายการที่กำลังทำงานอยู่แบบเสมือน
ทดสอบให้ครบทั้งรอบ
กด Tab เข้าไป เลื่อนด้วยปุ่มลูกศรผ่านทุกรายการ กด Tab ออก จากนั้นกด Tab เข้าไปอีกครั้ง และยืนยันว่าโฟกัสกลับไปยัง รายการที่ใช้งานล่าสุด
ตรวจสอบอย่างรวดเร็ว
ในแถบเครื่องมือที่ใช้ roving tabindex ณ ขณะใดขณะหนึ่ง จะมีรายการกี่รายการที่มี tabindex="0"
สรุป
คุณเข้าใจ roving tabindex แล้ว: รายการหนึ่งมีค่าเป็น 0 ส่วนที่เหลือมีค่าเป็น -1 ปุ่มลูกศรจะย้ายค่า 0 ไปมาระหว่างรายการ และ Tab จะเลื่อนผ่านวิดเจ็ตทั้งหมด 🚀
เรียนรู้ HTML ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “จัดการ tabindex แบบเลื่อนตำแหน่งในวิดเจ็ต” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “จัดการ tabindex แบบเลื่อนตำแหน่งในวิดเจ็ต” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Web Accessibility Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Web Accessibility Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “จัดการ tabindex แบบเลื่อนตำแหน่งในวิดเจ็ต”
ให้ปุ่มลูกศรย้ายตำแหน่งภายในตัวควบคุมแบบองค์ประกอบรวม คุณปฏิบัติ Web Accessibility Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Web Accessibility Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Web Accessibility Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “จัดการ tabindex แบบเลื่อนตำแหน่งในวิดเจ็ต” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Web Accessibility Academy นี้ได้ไหม
ได้ บทเรียน Web Accessibility Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- tabindex 0, -1 และห้ามใช้ค่าบวก
- ย้ายโฟกัสหลังการดำเนินการ
- คืนโฟกัสเมื่อเลเยอร์ปิดลง
- จัดการ tabindex แบบเลื่อนตำแหน่งในวิดเจ็ต