// 图片加载器 Promise function iloader(src){ return new Promise(function(resolve, reject){ const image = new Image(); image.onload = function(){resolve(image);}; image.onerror = function(err){reject(err);}; image.src = src; if(image.complete){resolve(image);} }); } document.addEventListener('DOMContentLoaded', function(){ let io = new IntersectionObserver(entries => { entries.forEach(entry => { if(entry.intersectionRatio > 0){ let wrap = entry.target; let src = wrap.dataset.src; /*console.log(src);*/ iloader(src).then(function(){ wrap.outerHTML = ``; }); io.unobserve(wrap); } }); }); document.querySelectorAll('img.lazy[data-src]').forEach(function(img){ let src = img.dataset.src; img.outerHTML = `
`; }); document.querySelectorAll('.lazyImg-wrap').forEach(function(wrap){ io.observe(wrap); }); }); console.clear();