- Trên di động đã có vấn đề ô trả lời bình luận đột ngột mở ra khi đang cuộn, và quản trị viên trang dùng ngón cái tay phải để cuộn không thể tái hiện được
- Nguyên nhân nằm ở liên kết reply bên trái trang và cách WordPress xử lý
touchstart, khiến thao tác cuộn bằng ngón cái tay trái có thể dẫn đến chạm vào liên kết ngoài ý muốn - Lỗi này đã được báo trên WordPress Trac từ 7 năm trước, và đoạn mã liên quan đã được thêm vào kho phát triển WordPress năm 2017
- Trước đây cần tránh độ trễ 300ms để phân biệt giữa chạm và zoom bằng chạm đúp, nhưng theo bài viết của Chrome năm 2013 và tài liệu FastClick năm 2015 thì đây đã là vấn đề cũ
- Bản sửa áp dụng theo cách xóa vài dòng trong mã WordPress, tập trung vào việc giảm hành vi trả lời bình luận ngoài ý muốn khi cuộn trên di động
Tối ưu blog và JavaScript cho bình luận
- Trên cài đặt WordPress mặc định, blog đã được áp dụng nhiều tùy chỉnh riêng để tối ưu hóa tối đa
- Lượng JavaScript được giảm xuống mức tối thiểu, và các chức năng được cấu hình để vẫn hoạt động ngay cả khi không có JavaScript
- Dù vậy, một số chức năng vẫn được JavaScript hỗ trợ, và ví dụ dễ thấy nhất là tính năng bình luận
Vấn đề chỉ lộ ra khi cuộn bằng tay trái
- Một độc giả đã báo lỗi trên trang, cho biết ô bình luận đột ngột xuất hiện khi đang cuộn trang và cản trở việc duyệt nội dung
- Quản trị viên trang thường xuyên cuộn nhưng dùng ngón cái tay phải nên không phát hiện ra cùng một vấn đề
- Người dùng báo lỗi cuộn bằng tay trái, còn liên kết reply gây vấn đề lại nằm ở phía bên trái trang
- Sự kiện chạm vốn khó xuất hiện khi cuộn bằng ngón cái tay phải lại có thể phát sinh ngoài ý muốn khi cuộn bằng ngón cái tay trái
Cách WordPress xử lý touchstart
- Vấn đề này đã từng được báo trên WordPress Trac từ 7 năm trước
- Năm 2017, một nhà phát triển WordPress đã thêm listener
touchstartcho cú nhấp vào liên kết - Trước đây, trình duyệt không thể phân biệt chắc chắn liệu một sự kiện chạm là khởi đầu của cú nhấp hay là khởi đầu của thao tác zoom bằng chạm đúp
- Việc kích hoạt sự kiện trước khi nhấp khi có thao tác chạm trên liên kết có thể được xem là cách xử lý để tránh độ trễ 300ms vào thời điểm đó
Vấn đề độ trễ 300ms đã biến mất từ lâu
- Độ trễ chạm 300ms từ lâu đã không còn là vấn đề cần xử lý theo cách này nữa
- Bài viết trên blog dành cho nhà phát triển Chrome năm 2013 đề cập rằng vấn đề độ trễ đó đã biến mất
- Theo tài liệu FastClick năm 2015, đây cũng không còn là vấn đề chính cần giải quyết nữa
- Vì vậy, không rõ vì sao vào năm 2017 lại thêm đoạn mã theo cách có thể làm phiền người dùng cuộn bằng tay trái
Cách sửa và hiệu quả kỳ vọng
- Sau 7 năm kể từ khi có báo cáo lỗi, PR sửa WordPress đã được commit
- Bản sửa không phải thay đổi phức tạp mà là cách xóa vài dòng trong mã WordPress
- Thay đổi này có thể giúp giảm tình trạng liên kết reply bị kích hoạt ngoài ý muốn khi đang cuộn trên di động, khiến ô trả lời bình luận bật mở
- Không tồn tại tính năng hạn chế truy cập theo tay thuận như
<meta handed="right">, và thay đổi lần này tập trung vào việc ngăn các sự kiện chạm ngoài ý muốn
1 bình luận
Các ý kiến trên Lobste.rs
Quá nhiều thứ trên đời được thiết kế theo chuẩn người thuận tay phải. Ngay cả chữ quảng cáo trên bút nhiều khi cũng chỉ đọc được đúng chiều khi cầm bằng tay phải
Dù vậy, sống như một người thuận tay trái cũng coi như có sẵn một chút tính năng chặn quảng cáo bẩm sinh
“sinister disposition” nghe buồn cười thật. Tôi nhớ ngày mình biết rằng sinister và dexterous (dexter) theo nghĩa đen lần lượt có nghĩa là “bên trái” và “bên phải”
Hiện tượng văn hóa “lệch khỏi chuẩn mực → xấu xa” mà chúng ta vẫn sống cùng đến nay vẫn rất thú vị
Rất có thể là vì từ gốc chỉ bên trái đã trở thành điều kiêng kỵ rồi bị thay bằng từ mới, và từ mới đó về sau lại tiếp tục thành điều kiêng kỵ, cứ lặp lại như vậy
[1]: https://reddit.com/r/asklinguistics/…
Mọi người thường chỉ cầm điện thoại bằng tay thuận thôi à? Tôi thuận tay trái nhưng dùng điện thoại bằng cả hai tay gần như ngẫu nhiên và ngang nhau, cứ tưởng ai cũng vậy
Ban đầu tôi cầm điện thoại bằng tay phải và thao tác bằng tay trái, nhưng theo thời gian ngón cái tay phải làm ngày càng nhiều việc hơn, cuối cùng trở thành điểm thao tác chính
Tôi cũng dùng chuột bằng tay phải, vì hồi nhỏ dây chuột trong phòng máy tính ngắn nên không thể chuyển sang bên trái để dùng
Tôi cũng thuận tay trái nhưng có nhiều việc làm bằng tay phải, như viết tay chẳng hạn. Trên piano, tay phải của tôi cũng là tay trội, và cách phần lớn các bản nhạc được viết chắc chắn cũng có ảnh hưởng. Điện thoại thì tôi dùng cả hai tay
Tuy nhiên nếu dài hơn hai ba câu thì tôi nhập bằng cả hai ngón cái
Thú vị là hầu hết mọi việc khác tôi làm bằng tay phải, nhưng với điện thoại thì lại nghiêng về cầm và dùng bằng tay trái
Không rõ lý do, nhưng có lẽ vì tôi bỏ điện thoại vào túi trái, còn ví và chìa khóa ở bên phải. Dùng chìa khóa và lấy ví bằng tay thuận thì tiện hơn. Không biết tôi có kỳ lạ không
Cuối cùng tôi cuộn trang hoặc làm các thao tác cơ bản bằng tay trái, nhưng khi nhập tin nhắn dài thì thường cầm bằng tay trái và dùng tay phải để nhập kiểu vuốt
Việc dùng
touchstartở đó ngay từ đầu đã sai rồiChuột, cảm ứng, con trỏ được kích hoạt khi thả ra chứ không phải khi nhấn xuống, nhưng điểm bắt đầu nhấn phải là cùng một phần tử. Sự kiện bàn phím được kích hoạt ở keydown chứ không phải keyup. Tuy nhiên trường hợp
Spacehoạt động trên nút thì kỳ lạ là lại ở keyup, và khác với chuột, nó cũng không quan tâm keydown đã xảy ra trên phần tử nàoCó thể thử nhiều khả năng bằng thứ như
data:text/html,<button onclick=this.textContent=Math.random()>One</button><button onclick=this.textContent=Math.random()>Two</button>Việc chuẩn bị kích hoạt ở
touchstart, chẳng hạn bắt đầu lấy trước dữ liệu từ máy chủ nếu cần, thì có lẽ vẫn ổn. Nhưng thực thi hành động thực sự thì chưa được xảy ra, vàelement.addEventListener( 'touchstart', clickEvent );đã xử lý sai đúng chỗ đóTôi không hiểu chuyện này liên quan gì đến người thuận tay trái
Đây có phải là hành vi đặc thù của touchpad mà người dùng chuột không biết không?