原生 JS 懒加载简单实现
来源:互联网 发布:php提示错误信息代码 编辑:程序博客网 时间:2024/05/18 03:22
懒加载优势:
(1) 节省网络资源 – 一次性加载所有资源很慢
(2) 对用户体验 – 节省流量, 使用友好
(3) 对服务器而言 – 减轻负载压力
懒加载原理:
只显示可视区域的图片给用户
功能实现
(1) 图片标签默认是占位图, 图片真正的地址在自定义属性里
(2) 滚动时把可是区域的占位图替换成自定义属性里的图片路径
需要用到知识点:
(1) 图片距离顶部的高度:
img.offsetTop
(2) 当前窗口的高度:
window.innerHeight
(3) 滚动条滚动的高度:
document.body.scrollTop || document.documentElement.scrollTop
加载图片的判断条件:
图片距离顶部的距离 < 浏览器滚动条滚动的高度 + 浏览器窗口的高度
var imgs = document.querySelecotrAll('img'); window.onscroll = function () { var scrollTop = document.body.scrollTop || document.documentElement.scrollTop; var winHeight = window.innerHeight; for(var i = 0; i < imgs.length; i++) { if (imgs[i].offsetTop < scrollTop + winHeight) { imgs[i].src = imgs[i].getAttribute('data-src'); } } }
阅读全文
0 0
- 原生 JS 懒加载简单实现
- 原生JS实现最简单的图片懒加载
- 原生 JS怎么 实现最简单的图片懒加载
- 原生JS实现图片懒加载
- JavaScript:原生JS实现图片懒加载
- 原生JS实现图片懒加载
- 原生JS实现图片懒加载
- 原生js懒加载
- js原生实现高性能懒加载(分步解析)
- 原生js实现ajax异步加载
- 简单实现原生JS中的多重继承
- 原生js实现简单的展开收缩
- 原生JS实现添加简单遮罩层
- 原生JS的简单tab切换实现
- 简单原生js实现开关门效果
- 原生JS实现DOM加载完成马上执行JS代码
- js开发:原生js实现图片延迟加载
- 原生JS实现瀑布流及加载效果
- 二进制文件的I/O
- 洛谷11月月赛 T2 不开心的金明
- java数组实题
- STL之拷贝和替换算法
- 从倒数第一到全国第二 安徽省专利电子申请率7年增8.4倍
- 原生 JS 懒加载简单实现
- 怎么修改eclipse及jsp的编码
- 一直程序员的养成日记 第一章 第五节 识好文,转好文
- java代码请求URL
- 远观数据库设计
- Qt 中自定义QLabel上的点击事件
- Spring Cloud (4) | NoSuchMethodError:javax.servlet.ServletContext.getVirtualServerName()
- css3用户界面
- 欢迎使用CSDN-markdown编辑器