Tôi đã tìm thấy hành vi lạ của sự kiện jQuery click
. Nếu chúng tôi đang sử dụng điều hướng bàn phím (trường hợp truy cập), nhấp được khởi chạy bởi Enter hoặc Không gian (tùy thuộc vào yếu tố HTML nào chúng tôi đang sử dụng).Nhấp chuột của chuột jQuery() được khởi chạy bằng điều hướng bàn phím
Có một trang thử nghiệm trên jsfiddle, Bạn có thể thử để điều hướng với bàn phím trong khung Kết quả, và nhấp được đưa ra trong các tình huống khác nhau:
Trong jQuery dẫn sử dụng, tôi đã tìm thấy sau mô tả về click sự kiện:
"Sự kiện nhấp được gửi đến phần tử khi con trỏ chuột trên phần tử và nút chuột được nhấn và nhả. Mọi phần tử HTML đều có thể nhận sự kiện này".
Có bình thường không? Làm cách nào để chặn các sự kiện nhấp chuột nếu đó là hành vi bình thường?
Có, tương tác bàn phím như sử dụng tab để điều hướng và sau đó ENTER sẽ kích hoạt sự kiện nhấp ... vì đó là lối tắt bàn phím cho hành vi mousedown/mouseup cho nhấp chuột – devnull69
Wow. Nếu logic này nếu được định nghĩa trong jQuery hoặc ở cấp trình duyệt? –
Tất cả các trình duyệt chính trên các cửa sổ làm điều này theo mặc định trên ví dụ đó (IE9, FF, Ch, Sa). Ngoài ra tôi đã thay đổi xử lý sự kiện từ jQuery thành javascript thuần túy và hành vi giống nhau nên nó phải là một biện pháp trình duyệt –