2011-12-19 42 views
6

tôi tải xuống plugin jquery lazyload từ trang web này http://www.appelsiini.net/projects/lazyload.Plugin tải xuống Jquery và chức năng gọi lại

từ tài liệu của họ, tôi không thấy rằng người dùng có thể sử dụng bất kỳ cuộc gọi lại nào hoặc không có plugin tải xuống.

giả html của tôi trông giống như

<div id="gallery" class="busy"><img src="blah.jpg" /></div> 
<div id="gallery" class="busy"><img src="blah2.jpg" /></div> 
<div id="gallery" class="busy"><img src="blah3.jpg" /></div> 

kịch bản của tôi như

$("#gallery img").lazyload(); 

lớp bận rộn sẽ chỉ cần thiết lập một hình ảnh bận rộn ở trung tâm của div. vì vậy tôi cần một cuộc gọi lại và từ callback tôi cần phải phát hiện tải xuống hình ảnh hoàn thành hay không nếu hoàn thành sau đó tôi chỉ cần loại bỏ các lớp học từ div cha tương ứng của thẻ hình ảnh.

vì vậy hãy chỉ cho tôi cách thực hiện gọi lại với tải nhẹ và cũng cần mã mẫu mà tôi có thể xóa lớp khỏi div gốc của thẻ hình ảnh tương ứng.

cảm ơn

+1

đánh dấu html ur là sai, ID phải là duy nhất cho các div khác nhau –

+0

tôi đã hỏi vấn đề khác nhau là có bất kỳ chức năng gọi lại nào kích hoạt mọi lúc khi tải xuống hoàn tất từng hình ảnh? –

Trả lời

12

Tôi có cùng một câu hỏi. Đã làm một số tìm kiếm, đến đây, và tìm thấy câu trả lời. Đây là wat tôi có và hoạt động cho tôi:

$(this).lazyload({ 
    effect : 'fadeIn', 
    load : function() 
    { 
     console.log($(this)); // Callback here 
    } 
}); 

Hy vọng điều này sẽ hữu ích!

+1

Tuyệt vời! Hoạt động trơn tru. – dnns

+0

Sự kiện để kích hoạt tải thêm thông tin http://www.appelsiini.net/projects/lazyload – zloctb

0

Câu trả lời của Rick de Graaf gần như đã làm cho tôi.

Vấn đề đối với tôi là: Tải được gọi cho hình ảnh giữ chỗ cũng như. Mà trong trường hợp của tôi là một vấn đề. Tôi chỉ muốn thêm một lớp vào hình ảnh được tải cuối cùng. Tôi đã thêm điều này để làm cho nó hoạt động cho tôi:

jQuery("img.lazy").lazyload({ 
      effect : 'fadeIn', 
      load : function() 
      { 
       if (jQuery(this).attr("src") != "data:image/gif;base64,R0lGODlhZABlAIAAAPn5+QAAACH5BAAAAAAALAAAAABkAGUAAAJ0hI+py+0Po5y02ouz3rz7D4biSJbmiabqyrbuC8fyTNf2jef6zvf+DwwKh8Si8YhMKpfMpvMJjUqn1Kr1is1qt9yu9wsOi8fksvmMTqvX7Lb7DY/L5/S6/Y7P6/f8vv8PGCg4SFhoeIiYqLjI2Oj4CBnZVQAAOw==") { 
        jQuery(this).addClass("visible-image");     
       } 
      } 
     }); 

Nếu hình ảnh được tải là dữ liệu: hình ảnh, không làm gì, hãy thêm lớp của tôi.

Các vấn đề liên quan