Tôi đang thay đổi img src khi tôi đã tải tệp json, tất cả đều hoạt động tốt. Nhưng tôi muốn đảm bảo hình ảnh được tải hoàn toàn. Tôi có thể làm gì khi sử dụng:gọi lại jquery khi tải hình ảnh khi thay đổi src
.one("load",function(){
alert("image has load yay");
});
Nhưng sau khi đọc các bài đăng khác nhau mà không phải tất cả các trình duyệt đều kích hoạt tải nếu hình ảnh trong bộ nhớ cache. Tôi dường như không nhận được vấn đề này trong trình duyệt có nghĩa là gây ra vấn đề này. Nhưng tôi đã chỉ thử nghiệm FF (6.0.2), Chrome (13.0.7) và Safari (5.0.5) trên một mac. Bây giờ tôi chắc chắn rằng IE phải có một vấn đề và nó chỉ có liên quan đến PC. Tôi đang chạy các phiên bản khá gần đây của các trình duyệt để có một cái gì đó thay đổi trong này để bây giờ cháy tải. Hoặc suy nghĩ khác của tôi là tôi đang chạy phiên bản mới nhất của jquery (1.6.3) có. Tải đã được thay đổi?
Tôi hy vọng đó là tất cả để làm với chạy jquery mới nhất, nhưng nếu không và đó là một vấn đề trình duyệt cũ hơn thì tôi cần phải đặt trong một sửa chữa. Tôi đã thử một vài giải pháp trên trang web này ví dụ: jQuery loading images with complete callback Và cũng có một số ý kiến trên trang .load api: http://api.jquery.com/load-event/#comment-30211903
Nhưng tôi dường như không thể nhận được chúng để làm việc. Người đầu tiên không làm việc gì cả và cái thứ hai dường như rơi xuống với .each().
Đây là mã tôi có cho đến nay có vẻ hoạt động tốt, nhưng không thể chắc chắn có thể là một vấn đề trình duyệt cũ hơn.
$.getJSON(jsonURL, function(json) {
$("a.imgZoom img").attr("src", json[imageID].largeImage).one("load",function(){
alert("the image has loaded");
//do something here
});
$("a.imgZoom").attr("href", json[imageID].largeImage);
})
Cảm ơn bạn đã giúp đỡ.
B
Cảm ơn bạn đã trả lời, xin lỗi không chắc chắn 100% tôi có thể gọi nó như thế nào trước đây. Nhìn vào ví dụ của bạn cũng không giúp được gì: ( – Ben
Tôi đã thêm một ví dụ vào câu trả lời của tôi có vẻ như hiệu quả. – jfriend00
Cảm ơn jfriend00, đã làm việc đó. Dĩ nhiên tôi không chắc liệu nó có khắc phục được các vấn đề có thể xảy ra không. nhưng tôi sẽ dùng từ ngữ của bạn. – Ben