Tình trạng của hover
viết tắt
Tính đến jQuery 1.8 các hover
viết tắt đã được phản. Xem jQuery on()
documentation:
Không dùng nữa như jQuery 1.8: Cái tên "hover" được sử dụng như một cách viết tắt cho chuỗi "mouseenter MouseLeave"
Tính đến jQuery 1.9, các hover
viết tắt là không được hỗ trợ . Xem jQuery 1.9 Upgrade Guide
Alternative
Trong trường hợp của bạn, nó có nghĩa là bạn nên sử dụng sự kiện mouseenter
. Ví dụ:
$(document).on("mouseenter", "#cart-left", function(){
$("#cart").addClass('active');
});
Xem jsFiddle demo
Làm cách sử dụng tốt hơn về on()
Nó cũng đáng chú ý là trừ khi chọn truyền cho on()
đề cập đến yếu tố được thêm vào DOM động (nghĩa là sau khi tải trang), không cần phải ủy quyền trình xử lý cho số document
. Thay vào đó, trong trường hợp này bạn có thể có thể bind chức năng xử lý trực tiếp đến các phần tử như vậy:
$("#cart-left").on("mouseenter", function(){
$("#cart").addClass('active');
});