vấn đề tôi thấy:
Thiết lập một chiều cao hoặc chiều rộng trên một inline <a>
hoặc <span>
thẻ trong CSS của bạn hoặc hình ảnh động của bạn. Đọc this article cho các vấn đề với cố gắng đặt chiều cao hoặc chiều rộng trên thẻ nội tuyến. Điều này áp dụng cho cả CSS và hoạt ảnh của bạn. Nếu bạn muốn animate chiều rộng, tôi nghĩ rằng bạn sẽ cần phải làm điều đó trên một phần tử khối.
Dường như với tôi rằng hoạt ảnh có thể bị nhầm lẫn bởi chuyển đổi cho chiều rộng và độ mờ đục. Có lẽ bạn nên tốt hơn chỉ định cả hai callbacks cho di chuột và xác định các hình ảnh động bắt đầu và điểm dừng trực tiếp hơn là để lại phương pháp chuyển đổi để có để tìm ra những gì bắt đầu và điểm dừng nên được.
Ví dụ, không làm lại HTML để chặn các phần tử (mà tôi nghĩ là cần thiết để tạo độ tin cậy cho chiều rộng), đây là một hoạt ảnh mượt mà trên chỉ độ mờ. Tôi đã đặt điểm bắt đầu trong CSS thành độ mờ bắt đầu mong muốn và tôi đã ngừng sử dụng chuyển đổi để đặt hoạt ảnh và đang thiết lập rõ ràng. Tôi không chắc chắn điều này là cần thiết, nhưng nó sures loại bỏ sự mơ hồ từ những gì chuyển đổi sẽ cố gắng để đoán những gì bạn muốn: http://jsfiddle.net/jfriend00/r2cdn/ (opacity hoạt hình chỉ trong jsfiddle này, cả hai hình ảnh động bao gồm trong jsfiddle dưới đây).
jQuery(document).ready(function() {
// Animate the single page nav
jQuery("a#post-nav-next").hover(function(){
jQuery("a#post-nav-next span").stop(true, true).animate({opacity: "1.0"});
}, function() {
jQuery("a#post-nav-next span").stop(true, true).animate({opacity: "0"});
}
);
});
Để chuyển đổi chiều rộng, bạn muốn chuyển giữa hai trạng thái nào? Điều đó không rõ ràng với tôi như một con người và có lẽ không rõ ràng với jQuery.toggle(). Nếu, những gì bạn đang cố gắng làm là animate padding bên phải, sau đó có lẽ bạn nên chỉ làm điều đó trực tiếp.
Nếu tôi đặt trong một hình động trực tiếp cho đệm và thay đổi giá trị bắt đầu trong CSS, nó bắt đầu hoạt hình trơn tru. Tôi không chắc chắn 100% tôi biết bạn đang tìm kiếm hoạt ảnh nào, nhưng đây là hướng bạn có thể đi: http://jsfiddle.net/jfriend00/PE4qQ/.
jQuery(document).ready(function() {
// Animate the single page nav
jQuery("a#post-nav-next").hover(function(){
jQuery("a#post-nav-next span").stop(true, true).animate({"opacity": "1.0", "padding-right": "100px"});
}, function() {
jQuery("a#post-nav-next span").stop(true, true).animate({"opacity": "0", "padding-right": "0px"});
}
);
});
Theo dõi. Dường như nó được gây ra bởi các văn bản reflowing như span đóng. Làm thế nào để sửa lỗi này? Có lẽ giấu nó ở gần? – Niels
Hmm ... vẫn không hoạt động [liên kết] (http://jsfiddle.net/9F5DK/6/) với tràn: ẩn – Niels
phỏng đoán của tôi là vì bạn đang tạo hoạt ảnh cho văn bản chứ không phải vùng chứa xung quanh. nhưng tôi cũng thích câu trả lời. tôi sẽ đợi ai đó thông minh hơn tôi để trả lời. – kasdega