เมนู แถบเมนู และปุ่มเมนู
สร้างเมนูแอปด้วยบทบาทและปุ่มที่ถูกต้อง
เมนู แถบเมนู และปุ่มเมนู เป็นบทเรียน Web Accessibility Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Web Accessibility Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Web Accessibility Academy มีบทเรียนทั้งหมด 4 บทเรียน
เมนู ARIA คืออะไร
เมนู ARIA คือรายการคำสั่งในรูปแบบแอป เช่น เมนู File หรือ Edit ในซอฟต์แวร์เดสก์ท็อป ไม่ใช่การนำทางหลักของเว็บไซต์ 🍔
ไม่ใช่สำหรับการนำทางเว็บไซต์
ลิงก์ของหน้าควรอยู่ใน nav พร้อมจุดยึดปกติ ใช้บทบาทเมนูเฉพาะกับชุดคำสั่งจริงเท่านั้น มิฉะนั้นจะทำให้ผู้ใช้โปรแกรมอ่านหน้าจอสับสน
สามบทบาทหลัก
รูปแบบนี้ใช้ role="menu" กับคอนเทนเนอร์ ใช้ role="menuitem" กับคำสั่งแต่ละรายการ และใช้ role="menubar" กับแถบแนวนอนที่แสดงอยู่เสมอ
<ul role="menu">
<li role="menuitem">Cut</li>
<li role="menuitem">Copy</li>
</ul>ปุ่มเมนู
ปุ่มเมนู คือปุ่มจริงที่เปิดเมนู ให้เพิ่ม aria-haspopup="true" เพื่อให้ผู้ใช้ทราบว่าจะมีป๊อปอัปปรากฏ
<button aria-haspopup="true"
aria-expanded="false">Actions</button>ติดตามสถานะการเปิด
ปุ่มเมนูสลับ aria-expanded ระหว่าง true และ false ขณะที่เมนูเปิดและปิด เช่นเดียวกับตัวควบคุมการเปิดเผยเนื้อหาอื่น ๆ
ย้ายโฟกัสเมื่อเปิด
เมื่อเมนูเปิด ให้ย้าย โฟกัส เข้าไปในเมนูและวางไว้ที่รายการเมนูแรก ปุ่มจะไม่ถือโฟกัสอีกต่อไปขณะที่เมนูทำงาน
ใช้ปุ่มลูกศรภายในเมนู
ภายในเมนูแนวตั้ง ลูกศรขึ้นและลูกศรลง ใช้เลื่อนระหว่างรายการ ในแถบเมนู ลูกศรซ้ายและลูกศรขวาใช้เลื่อนไปตามแถบระดับบนสุด
roving tabindex
ในแต่ละครั้งจะมีรายการเมนูเพียงรายการเดียวที่อยู่ในลำดับการกดแท็บ ด้วย roving tabindex รายการที่มีโฟกัสจะมี tabindex 0 ส่วนรายการที่เหลือมีค่า -1
เปิดใช้งานและปิดเมนู
Enter หรือ Space จะเรียกใช้คำสั่งที่มีโฟกัสและปิดเมนู เมนูควรปิดตัวเองหลังเลือกคำสั่ง
Escape คืนโฟกัส
Escape ปิดเมนูโดยไม่ดำเนินการใด ๆ และส่งโฟกัสกลับไปยังปุ่มเมนู เพื่อให้ผู้ใช้กลับมายังจุดเดิมที่เริ่มต้น
เมนูย่อยต้องมีการจัดการเพิ่มเติม
เมนูย่อยแบบเลื่อนออกใช้ aria-haspopup กับ menuitem หลัก ลูกศรขวาใช้เปิดเมนูย่อย ส่วนลูกศรซ้ายใช้ปิดและย้อนกลับ
ตรวจสอบอย่างรวดเร็ว
คุณเพิ่มปุ่มที่เปิดรายการคำสั่ง สิ่งใดบอกเทคโนโลยีช่วยเหลือว่าจะมีเมนูปรากฏขึ้น
ทบทวน
เมนูมีไว้สำหรับคำสั่ง ไม่ใช่ลิงก์ไปยังหน้าอื่น ให้เปิดเมนูด้วยปุ่ม haspopup เลื่อนโฟกัสเข้าไป นำทางด้วยปุ่มลูกศรและ roving tabindex และให้ปุ่ม Escape นำโฟกัสกลับ ✅
เรียนรู้ HTML ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “เมนู แถบเมนู และปุ่มเมนู” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “เมนู แถบเมนู และปุ่มเมนู” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Web Accessibility Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Web Accessibility Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “เมนู แถบเมนู และปุ่มเมนู”
สร้างเมนูแอปด้วยบทบาทและปุ่มที่ถูกต้อง คุณปฏิบัติ Web Accessibility Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Web Accessibility Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Web Accessibility Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “เมนู แถบเมนู และปุ่มเมนู” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Web Accessibility Academy นี้ได้ไหม
ได้ บทเรียน Web Accessibility Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- อ่าน APG: รูปแบบ ปุ่ม และตัวอย่าง
- คอมโบบ็อกซ์และการเติมข้อความอัตโนมัติอย่างถูกต้อง
- เมนู แถบเมนู และปุ่มเมนู
- ตารางต้นไม้และรูปแบบขั้นสูงอื่น ๆ