jquery.lazyload滚动不起做用

  昨天同事在开发图片懒加载功能时用到了lazyload,使用至关标准,然而结果却不如人意,在滚动时未能起做用。引用https://cdn.bootcss.com/jquery_lazyload/1.9.7/jquery.lazyload.js,打断点测试,也没有发现捕获到滚动事件,感受奇怪,因而在控制台添加以下事件:css

window.onscroll=function(){alert(123);}

发现也没有起做用,这才注意到是因为滚动事件无效,那么滚动事件无效会是有哪些缘由形成的呢?搜索了一下,发现主要有以下两周状况:html

  一、设置了height:100%jquery

  二、元素设置了overflow:scroll/auto测试

  因而将凡有height:100%的样式先注释掉,发现依然不行,又找到overflow:scroll样式,想去掉这个样式,结果发现没有滚动条了。不由叹息,难道有这个样式就没法懒加载了吗?随意浏览了一下lazyload的源代码,忽然眼前一亮,当前图片实际上在一个容器中,只要捕获容器的滚动事件便可,而lazyload中具备container属性,那么用了这个属性后是否是就能够了呢?通过测试,发现确实能够了。使用方式以下:spa

$("img.lazy").lazyload({ 
container: $("#container") 
}); 

   该问题如此周折,暴漏了本身在html、css上的不足,须要着重弥补。.net

   另外,今天发现了一篇博客,详细介绍了lazyload,其中包括容器属性的使用,地址以下:code

   https://www.jb51.net/article/31594.htm cdn

相关文章
相关标签/搜索