Điều hướng bằng bàn phím trên Firefox được cải thiện với tiện ích mở rộng đơn giản cho các thành phần web hiện đại

Nhóm Cộng đồng BigGo
Điều hướng bằng bàn phím trên Firefox được cải thiện với tiện ích mở rộng đơn giản cho các thành phần web hiện đại

Việc duyệt web hiện đại ngày càng trở nên khó khăn đối với những người dùng bàn phím khi các trang web chuyển từ liên kết truyền thống sang các nút và div tương tác. Mặc dù Firefox cung cấp các tính năng điều hướng bàn phím hữu ích như phím dấu nháy đơn để tìm liên kết nhanh, những công cụ này vẫn không đáp ứng được khi xử lý các thành phần web đương đại dựa trên trình xử lý click JavaScript.

Vấn đề cốt lõi với điều hướng trình duyệt hiện tại

Các tính năng tìm kiếm tích hợp của Firefox hoạt động tốt với liên kết truyền thống, nhưng gặp khó khăn với các mẫu thiết kế web hiện đại. Tính năng tìm nhanh (/) và tìm trong trang (Ctrl+F) có thể làm nổi bật bất kỳ văn bản nào trên trang web, nhưng việc nhấn Enter trên nội dung được làm nổi bật mà không phải là liên kết thích hợp sẽ không có tác dụng gì. Hạn chế này trở nên đặc biệt khó chịu khi cố gắng tương tác với các nút, span hoặc div có trình xử lý click được đính kèm.

Cộng đồng đã xác định đây là vấn đề phổ biến ảnh hưởng đến khả năng tiếp cận. Những người dùng phụ thuộc vào điều hướng bàn phím thấy mình không thể tương tác với nhiều trang web hiện đại sử dụng các thành phần điều khiển JavaScript thay vì liên kết HTML ngữ nghĩa.

So sánh điều hướng bằng bàn phím trên các trình duyệt:

  • Firefox: Tính năng tìm kiếm nhanh (') chỉ hoạt động với các liên kết, các nút không phản hồi với phím Enter sau khi tìm kiếm
  • Chrome: Hỗ trợ nút tốt hơn, Ctrl+Enter hoạt động trên một số phần tử thử nghiệm
  • Qutebrowser: Được xây dựng đặc biệt cho điều hướng bằng bàn phím với các điều khiển giống vi
  • Tất cả trình duyệt: Gặp khó khăn với các trình xử lý onclick JavaScript trên các phần tử div/span

Giải pháp cộng đồng và cách khắc phục

Cuộc thảo luận tiết lộ một số cách tiếp cận để giải quyết thách thức điều hướng bàn phím. Các tiện ích mở rộng phổ biến như Vimium, Tridactyl và Vimium C đã thu hút đáng kể người dùng tìm kiếm khả năng điều khiển bàn phím tốt hơn. Những tiện ích mở rộng này cung cấp các phím tắt giống vim và có thể làm nổi bật tất cả các thành phần có thể nhấp, không chỉ liên kết truyền thống.

Tuy nhiên, một số người dùng thích các giải pháp nhẹ hơn. Một tiện ích mở rộng trình duyệt đơn giản đã xuất hiện để giải quyết vấn đề cốt lõi chỉ với vài dòng mã JavaScript. Tiện ích mở rộng này lắng nghe các lần nhấn phím Enter, xác định thành phần văn bản hiện được chọn, tìm thành phần HTML cha của nó và kích hoạt sự kiện click trên đó.

Các Extension Điều Hướng Bằng Bàn Phím Phổ Biến:

  • Vimium / Vimium C: Phím tắt giống Vim, làm nổi bật tất cả các phần tử có thể nhấp bằng phím 'f'
  • Tridactyl: Extension chỉ dành cho Firefox với các điều khiển bàn phím toàn diện
  • Surfingkeys: Có thể tùy chỉnh nhưng đường cong học tập khá dốc
  • ShortCat: Giải pháp cấp hệ thống macOS sử dụng API khả năng tiếp cận

Sự không nhất quán của trình duyệt và thách thức kỹ thuật

Kiểm tra cho thấy hành vi không nhất quán giữa các trình duyệt khác nhau. Trong khi Chrome xử lý một số tương tác bàn phím với nút một cách chính xác, Firefox cho thấy các mẫu hành vi khác nhau. Cộng đồng đã lưu ý rằng ngay cả các cách khắc phục cơ bản như nhấn Escape để đóng hộp thoại tìm kiếm trước khi nhấn Enter cũng không hoạt động nhất quán trên tất cả các loại thành phần.

Web là một nơi tuyệt đẹp - phản ánh sự thất vọng mà nhiều nhà phát triển cảm thấy về các sự kiện onclick điều khiển JavaScript bỏ qua khả năng tiếp cận bàn phím tiêu chuẩn.

Những sự không nhất quán này làm nổi bật các mối quan tâm về khả năng tiếp cận rộng lớn hơn, đặc biệt quan trọng vì khả năng tiếp cận bị hỏng có thể có hậu quả pháp lý ở EU và Mỹ đối với các dịch vụ thương mại.

Giải pháp trình duyệt thay thế

Một số người dùng đã chuyển sang các trình duyệt chuyên biệt điều khiển bằng bàn phím như Qutebrowser, được xây dựng trên công cụ Chromium với các điều khiển giống vi từ đầu. Những người khác dựa vào các giải pháp cấp hệ thống như ShortCat cho macOS, sử dụng API khả năng tiếp cận để thêm điều hướng bàn phím vào bất kỳ ứng dụng nào.

Sự đa dạng của các giải pháp cho thấy rằng mặc dù vấn đề được công nhận rộng rãi, nhưng không có câu trả lời hoàn hảo duy nhất nào phù hợp với nhu cầu và sở thích của mọi người.

Kết luận

Thách thức điều hướng bàn phím trong các trình duyệt hiện đại phản ánh sự căng thẳng rộng lớn hơn giữa sự phát triển web và khả năng tiếp cận. Trong khi các nhà phát triển đã tạo ra nhiều tiện ích mở rộng và cách khắc phục khác nhau, vấn đề cốt lõi vẫn là các trình duyệt chưa hoàn toàn điều chỉnh các tính năng điều hướng tích hợp để xử lý các mẫu thiết kế web đương đại. Các giải pháp đơn giản như tiện ích mở rộng nhẹ được mô tả cho thấy triển vọng, nhưng bản sửa lỗi lý tưởng sẽ liên quan đến việc các trình duyệt hỗ trợ tương tác bàn phím với tất cả các thành phần có thể nhấp một cách tự nhiên, bất kể chúng được triển khai như thế nào.

Tham khảo: A Small Change To Improve Browsers for Keyboard Navigation