首页 > 代码库 > 原生JavaScript实现懒加载
原生JavaScript实现懒加载
源码工程下载地址:https://github.com/blff122620/jsLibary/lazyLoad.html
实现原理就是通过scroll事件判断元素是否已经进入viewport
导入
lazyLoad.js
使用
inViewPort(item)即可 判断item是否在视口里,然后继续进行自己的逻辑就行了
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>图片懒加载</title> <link rel="stylesheet" href="./static/css/reset.css"> <link rel="stylesheet" href="./static/css/global.css"> <style> .content { /*height: 1500px;*/ width: 100%; overflow: hidden; } .content>img { border-radius: 5px; display: inline-block; margin: 200px 0 0 200px; width: 235px; } </style> </head> <body> <div class="content bg1" id="js-imgdiv"> <img src="./static/img/lazyDefault.jpg" data-url="./static/img/1.jpg" alt="" > <img src="./static/img/lazyDefault.jpg" data-url="./static/img/2.jpg" alt="" > <img src="./static/img/lazyDefault.jpg" data-url="./static/img/3.jpg" alt="" > <img src="./static/img/lazyDefault.jpg" data-url="./static/img/4.jpg" alt="" > <img src="./static/img/lazyDefault.jpg" data-url="./static/img/5.jpg" alt="" > <img src="./static/img/lazyDefault.jpg" data-url="./static/img/6.jpg" alt="" > </div> <script type="text/javascript" src="./static/js/util.js"></script> <script type="text/javascript" src="./static/js/lazyLoad.js"></script> <script> (function() { window.onload=function(){ var pics = $$("#js-imgdiv>img"); setPicSrc(pics); window.onscroll = function(){ setPicSrc(pics); }; function setPicSrc(pics){ pics.forEach(function(item){ if(inViewPort(item)){ setTimeout(function(){ item.src = item.dataset.url; },200);//模拟一下网速慢的情况 }; }); } }; }()); </script> </body> </html>
原生JavaScript实现懒加载
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。