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

相關文章
相關標籤/搜索