一个简单的图片懒加载
来源:互联网 发布:php class 构造函数 编辑:程序博客网 时间:2024/04/20 12:38
一个简单的图片懒加载
所谓懒加载,是为了提高网页的打开的速度,获得更好用户体验的一种手段。其选择的重要的部分先加载,次要的部分需要的时候再加载。比如一个电商网站,首屏通常有很多的数据,清晰度较高的 banner 或轮播。页面非首屏部分会员很多商品夹杂着大量的图片。这是时候选择懒加载以保证首屏的流畅十分重要。
本文仅仅简单的举例图片的懒加载,是性能优化的入门的篇章,方法比较简单明了,只要有一点 js 基础就一定能看懂。
废话不多说
<img src="img/pic_error.jpg" class="img-delay" data-src="img/banner.png" />
首先,对于非首屏的图片添加了 class=”img-delay” 和 data-src属性,后者用来放置图片原始 url 地址的属性,对于图片本身的 src 属性,可以选择空着,或者添加一个”图片无法显示“的提示性图片,像天猫这样:
之后我们需要做的就是,当用户下滑到哪里就显示哪里的图片(提前一点点显示更好,这里不做提前了)
//首先你需要引入一个 jQuery 库//获取需要延迟加载的图片var $picDelay = $(".img-delay");//在 window 上监听滑动事件$(window).scroll(function(){ var scrollTop = $(window).scrollTop(); //滑块划过的距离 var screenHeight = screen.height; //屏幕浏览器内容部分的高度 //计算每个图片的位置是否符合要求 $picDelay.each(function(idx, ele){ var $ele = $(ele); //当scrollTop + screenHeight === ele.offsetTop时图片刚好出现上边沿 if(scrollTop + screenHeight >= ele.offsetTop){ $ele.attr("src", $ele.attr("data-src")).removeAttr('data-src').removeClass("img-delay"); } }); //当所有图片都加载了以后,移除这个事件 if($(".img-delay").length <= 0){ $(window).unbind("scroll"); }});
0 0
- 一个简单的图片懒加载
- 一个简单的图片加载器android
- 自定义一个简单的可以加载网络图片的ImageView
- qml-------------实现一个简单的图片加载程序
- 简单的懒加载图片数据
- 简单的图片加载类
- 简单的Fresco加载图片
- 普通情况下的图片懒性加载 简单封装图片预加载函数
- 原生JS实现最简单的图片懒加载
- 原生 JS怎么 实现最简单的图片懒加载
- js实现简单的图片懒加载功能
- 一个简单的图片预览
- 一个简单的图片浏览器
- 一个简单的图片预览
- 一个简单的图片选择器
- Fresco图片加载框架的简单介绍
- 【Android】图片资源的加载、简单处理
- 简单的canvas加载图片与视频
- Struts2学习(三)---Struts2.5使用通配符完成登录注册
- Java中的NIO非阻塞编程
- 理解分布式和集群的区别
- Android平台监听系统截屏方案预研及相关知识点
- 最大流问题以及FF算法
- 一个简单的图片懒加载
- UDP协议开发小结
- 关于IOS一些有的没的 – IOS Runtime机制二
- 内部类(2)
- 安装完delphi6之后出现unable to rename错误
- js弹出框、对话框、提示框、弹窗总结
- 转:java二维码工具类,中间带LOGO的,很强大
- Openssl之PEM系列
- javascript类型系统——字符串String类型