jQuery LazyLoad Alternative(减去滚动条代码)

嘿,我想要的是使用jQuery插件:
LazyLoad

但是,而不是在Window Scroll上触发事件 – 我想在触发时触发它
元素进入视野.

(我的网站上没有滚动条,因此不能选择滚动条).

在我没有头发之前帮助我.

编辑:好的,所以我让它工作 – 排序 – 它似乎只是垂直工作,只有溢出显示! *

最佳答案 您最好的选择是设置计时器并反复检查图像可见性.或者你可以使跟踪器功能公共方法,然后如果有什么改变,从外面调用它.

将LazyLoad更改为以下内容:

// ...
var elements = this;
if ("scroll" == settings.event) { // <-- you may want to remove conditional block
     var tracker = function(event) {  // <-- give it a name
        var counter = 0;
        elements.each(function() {
            if ($.abovethetop(this, settings) ||
                $.leftofbegin(this, settings)) {
                    /* Nothing. */
            } else if (!$.belowthefold(this, settings) &&
                !$.rightoffold(this, settings)) {
                    $(this).trigger("appear");
            } else {
                if (counter++ > settings.failurelimit) {
                    return false;
                }
            }
        });
        /* Remove image from array so it is not looped next time. */
        var temp = $.grep(elements, function(element) {
            return !element.loaded;
        });
        elements = $(temp);
    };

    (function repeat(){              
      tracker(); // <-- so you can use it here
      if (elements.length) 
        setTimeout(repeat, 100); // <-- check every 100ms
    })();
}
// ...
点赞