Jquery 延迟加载回调

标签 jquery jquery-plugins callback lazy-loading jscrollpane

我目前正在使用 Jquery Lazy Load我想知道当我的容器中的所有图像结束加载时(当延迟加载发挥了所有魔力时)是否有一种方法可以进行回调。

原因是我正在使用jScrollPane Plugin我也想调用 jScrollPane 重新初始化函数。

谢谢

最佳答案

查看源代码,延迟加载插件似乎在加载图像后调用 settings.load 函数,传递加载的图像元素和几个参数:

if (settings.load) {
    var elements_left = elements.length;
    settings.load.call(self, elements_left, settings);
}

因此您可能需要设置如下内容:

function yourhandler(element, el_left, settings) {
    //Whatever you want
    //This function will be called each time that an image (element in this case) is loaded
}
$("img.lazy").lazyload({ 
    load : yourhandler
});

如果您想确保图像已加载,可以将监听器附加到加载的图像:

function yourhandler(element, el_left, settings) {
    element.load(function() {  
        alert('Image Loaded');  
    });
}

编辑

尝试代码后,最“干净”的方法是附加到图像的 .load 方法:

$('img.lazy').load(function() {
    console.log($(this).attr('src') + ' loaded');
});

$('img.lazy').lazyload({
    container:$('.p_content'),
});​

http://jsfiddle.net/eRyww/72/

关于Jquery 延迟加载回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11398005/

相关文章:

javascript - 单选切换按钮问题

javascript - 自制的jQuery插件已触发但不起作用

jQuery jPlayer 在 Safari 中首次运行后无法重播

css - 无法在我的 "fancybox"和移动设备上的 "sidr side left menu"中向下滚动(在某些浏览器中)

javascript - AngularJS Typeahead 回调函数

android - 滚动画廊的按钮

php - 在 PHP 中使用命名空间中的静态函数作为回调

javascript - 选择链接时关闭 Bootstrap 菜单

javascript - jquery改变函数内部的全局变量

javascript - 使用 jquery 停止页面上的任何 vimeo 视频