X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/816a4653c0086eeaf57ba148864bb06678d9234c..1cbb8af568a8c7016e4d88e3f77250b5b4b824d6:/project/static/js/jquery.lazyload.js

diff --git a/project/static/js/jquery.lazyload.js b/project/static/js/jquery.lazyload.js
old mode 100644
new mode 100755
index 25c94869..c15167bd
--- a/project/static/js/jquery.lazyload.js
+++ b/project/static/js/jquery.lazyload.js
@@ -12,7 +12,7 @@
         }
         
         var container = this;
-        container.data('lastScroll', -10000);
+        container.data('lazyload:lastCheckedScrollTop', -10000);
         
         function aboveViewport(container, element, threshold) {
             return $(container).offset().top >= $(element).offset().top + $(element).height() + threshold;
@@ -23,15 +23,24 @@
         }
         
         function checkScroll() {
-            if (Math.abs(container.scrollTop() - container.data('lastScroll')) > settings.scrollThreshold) {
-                container.data('lastScroll', container.scrollTop());
+            if (container.data('lazyload:lastCheckedScrollTop') == undefined) {
+                return;
+            }
+            if (Math.abs(container.scrollTop() - container.data('lazyload:lastCheckedScrollTop')) > settings.scrollThreshold) {
+                container.data('lazyload:lastCheckedScrollTop', container.scrollTop());
                 
                 $(pattern, container).each(function() {
                     if (aboveViewport(container, this, settings.threshold)
                         || belowViewport(container, this, settings.threshold)) {
                         $(this).html(settings.placeholder);
                     } else {
-                        $(this).html('<img src="' + $(this).attr('src') + '" width="' + $(this).width() + '" />');
+                        $(this).html('');
+                        var self = this;
+                        $('<img src="' + $(this).attr('src') + '" width="' + $(this).width() + '" />').load(function() {
+                            if ($(this).height() > $(self).height()) {
+                                $(self).height($(this).height());
+                            }
+                        }).appendTo(this);
                     }
                 })
             }