Tôi đang xây dựng một ứng dụng cho phép bạn di chuyển các mục danh sách từ danh sách này sang danh sách khác bằng cách nhấp vào chúng. Tuy nhiên, để người dùng biết hành động dự định của một con trỏ là gì, tôi đã thiết lập: trạng thái di chuột trong CSS để hiển thị hướng dẫn như "< < move"Internet Explorer: trạng thái di chuột trở nên dính khi phần tử DOM mục tiêu được di chuyển trong DOM
Sự cố mà tôi đã tìm thấy là rằng trong Internet Explorer (thử nghiệm phiên bản 7-9), khi tôi di chuyển một phần tử DOM, trạng thái di chuột của phần tử đó vẫn còn (trở thành dính), ngay cả khi chuột được di chuyển xung quanh. Trạng thái hover chỉ biến mất khi người dùng di chuột qua mục đó ở vị trí mới và sau đó di chuyển chuột của họ. Đây là một Internet Explorer chỉ có vẻ vấn đề.
Bạn có thể thấy vấn đề nếu bạn đang sử dụng trình duyệt IE bằng cách vào http://jsfiddle.net/hc2Eu/32/
Có tất nhiên một workaround đó là không sử dụng CSS: trạng thái di chuột và sử dụng một sự kiện JQuery di chuột thay vào đó, nhưng điều này chắc chắn là không cách tốt nhất để làm việc và giữ các yếu tố: trạng thái di chuột được kiểm soát trong CSS là cách xa và mạnh mẽ nhất để thực hiện điều này. Cách giải quyết có thể được xem tại http://jsfiddle.net/hc2Eu/29/
Có ai tìm ra cách tôi có thể nói với Internet Explorer bằng cách nào đó rằng phần tử không còn nằm trong chuột nữa và nó sẽ giải phóng trạng thái: hover?
Matt
Cách "tốt nhất" không hoạt động. Cách giải quyết khác. Tôi không hiểu tại sao đây là một vấn đề cho bạn. – Blazemonger
Đó là một vấn đề vì đó là lỗi trình duyệt, vì vậy mỗi khi tôi thêm mã để khắc phục sự cố trình duyệt, tôi đang làm ô nhiễm mã của mình. Trong một nỗ lực để giữ mã có thể đọc được và súc tích, tôi thích tránh các cách giải quyết nếu có thể. –