Tôi đã nhận thấy có vấn đề lạ với cách Chrome xử lý sự kiện tập trung javascript. Thực tế là, nó liên tục kích hoạt sự kiện tập trung, ngay cả khi nó chỉ xảy ra một lần. Tôi đã thực hiện một chút nghiên cứu ở đây và tìm thấy câu hỏi mà mọi người gặp phải vấn đề tương tự khi sử dụng alert(). Khi họ đóng cửa sổ cảnh báo, tiêu điểm sẽ trở về đầu vào của chúng và trình xử lý kích hoạt lặp đi lặp lại. Trong trường hợp của tôi, vấn đề là khác nhau, khi tôi đang sử dụng console.log(), và theo thời gian tôi nhận được cùng một bản ghi 2 hoặc thậm chí 3 lần. Tôi đã nhận thấy nó thường xảy ra khi tôi xóa giao diện điều khiển, và sau đó tập trung vào một yếu tố. Khi tôi cố gắng lặp lại nó, nó không xảy ra nữa.Google Chrome sao chép sự kiện JavaScript 'tập trung'
Kịch bản:
- Rõ ràng console
- Tập trung vào các yếu tố (2 hoặc 3 giao diện điều khiển thông điệp)
- Tập trung vào các yếu tố giống hệt nhau khác hoặc Không tập trung và tập trung một lần nữa trên cùng một (không có vấn đề)
- Xóa bảng điều khiển
- Tập trung vào yếu tố (2 hoặc 3 thông báo bàn điều khiển - sự cố đã trở lại!)
Tôi đã tạo một jsfiddle, xin vui lòng kiểm tra xem nó ra: http://jsfiddle.net/ffuWT/3/
Câu hỏi đặt ra là, lý do cho vấn đề này là gì và làm thế nào tôi có thể làm việc xung quanh nó?
Hoạt động như mong đợi (không phải cách bạn mô tả) cho tôi, chạy Chrome 17.0.963.78 m – m90
Tôi không thể tạo lại sự cố của bạn và tôi không thấy cách xóa bảng điều khiển trong '# 4' tạo sự cố với sự kiện kích hoạt hai lần? Bạn đã thử dừng sự kiện từ sủi bọt trong chức năng của bạn chưa? Thử thêm 'e.stopPropagation()' –
Tôi có thể tạo lại vấn đề. 'e.stopPropagation' không giải quyết nó cho tôi. –