echo.js的github地址:https://github.com/toddmotto/echo echo是一個獨立的JavaScript、輕量級的、延遲圖片載入插件,echo壓縮後體積不到1k,使用html的標準data-*屬性,echo支持IE8+。 一般將其放在滾動事件的下麵: <img ...
echo.js的github地址:https://github.com/toddmotto/echo echo是一個獨立的JavaScript、輕量級的、延遲圖片載入插件,echo壓縮後體積不到1k,使用html的標準data-*屬性,echo支持IE8+。 一般將其放在滾動事件的下麵: <img class="lazy" src="tool/img.gif" :data-echo="i.url"/> 使用echo.js非常簡單,在網頁需要延遲載入的img標簽中,設置data-echo屬於指向需要載入的圖片路徑,src屬性指向預設載入圖片路徑。然後引入echo.min.js,並初始化echo即可。
echo.init({
offset: 0,
throttle: 0 ,
unload: false,
callback: function (element, op) {
console.log(element, 'has been', op + 'ed');//element是延遲載入的對象;
}
});
常用參數及方法說明
參數 | 描述 | 預設值 |
offset | 離可視區域多少像素的圖片可以被載入 | 0 |
throttle | 圖片延遲多少毫秒載入 | 250 |
debounce | 防抖動 | true |
unload | 告訴echo是載入還是卸載視圖中的圖片,當圖片離開視圖區域時觸發 | false |
callback | 回調函數,用來檢測圖片是否載入 | function() |
最後echo.js還提供了一個.render()方法,用法如下:
echo.render();
應用場景:當你的頁面沒有發生滾動,而你想載入即將要顯示的圖片,如圖片輪播,當第一張圖片顯示完,接著滑動展示第二張圖片,這個時候使用echo.render();
提前載入第二張圖片,就不會出現圖片載入卡頓白屏等現象。