美文网首页
三行代码让你网站加载快100倍!

三行代码让你网站加载快100倍!

作者: 方老司 | 来源:发表于2016-12-07 13:52 被阅读65次

使用图片的懒加载!

对页面加载速度影响最大的就是图片,一张普通的图片可以达到几M的大小,而代码也许就只有几十KB。当页面图片很多时,页面的加载速度缓慢,几S钟内页面没有加载完成,也许会失去很多的用户。

所以,对于图片过多的页面,为了加速页面加载速度,所以很多时候我们需要将页面内未出现在可视区域内的图片先不做加载, 等到滚动到可视区域后再去加载。

这样对网页的加载速度至少有几十到上百倍的提升!

原理

计算<img>是否应该显示,如果已到屏幕显示区域则显示图片,否则不加载图片

JavaScript实现

动态加载总共分为以下几个步骤,这里每个步骤都将被拆分为独立的函数

1. 添加页面滚动监听事件

2. 当触发监听事件时会执行 _loadImage 函数,该函数负责加载图片

虽然执行了_loadImage函数,但是我们得知道哪些图片需要被加载,这里的判断依据是什么呢?

3 依据就是判断该图片是否在当前窗口的可视区域内,在这里我们封装一个_isShow函数来实现

自此一个图片加载的闭环就形成了

当网页滚动的事件被触发 -> 执行加载图片操作 -> 判断图片是否在可视区域内 -> 在,则动态将data-src的值赋予该图片。

好了,这样基本就可以了。

最后给出源码,大家直接下来就可以用啦,好用别忘了给颗星呀

https://github.com/zhanyouwei/m-lazy

相关文章

  • 三行代码让你网站加载快100倍!

    使用图片的懒加载! 对页面加载速度影响最大的就是图片,一张普通的图片可以达到几M的大小,而代码也许就只有几十KB。...

  • web性能优化

    有服务器,有网站才能做性能优化,需要改网站的后台代码 什么是web性能优化? 用户觉得网站加载快 与前端有关的阶段...

  • CNZZ异步统计代码

    CNZZ网站统计代码以异步加载形式加载, 可大幅提升网站的响应速度, 并且不显示统计图标。 统计代码如下: 添加好...

  • 实现全屏滑动,解决UIScrollerView的冲突

    实现全屏滑动,解决UIScrollerView的冲突 之前我们追求 让你三行代码, 今天我们追求让你随便写代码, ...

  • 【转载】使用Redis技术加速wordpress网站

    快!快!快!我们都知道网站的加载速度直接影响用户体验。据研究发现,网站页面在3秒内加载完毕对用户而言是最佳的浏览体...

  • 利用Glide、PhotoView、Dialog、ViewPag

    简介 对图片的加载和查看做了一个简单的封装,其目的是为了提高复用性,让主类变的更简洁,只需“三行代码”即可实现图片...

  • Session、Cookie、Token和CSRF

    CSRF是当A网站的cookie依然有效的时候,用户访问了恶意网站B,客户端就加载了网站B的恶意代码,这个...

  • vue 单页面性能优化篇-工具

    一、首次加载无用文件 要想知道网站实际使用了多少 JavaScript 代码,我们可以转到 devtools ->...

  • Js 延迟加载的办法

    使用setTimeout延迟方法的加载时间 (延迟加载js代码,给网页加载留出更多时间) 让js最后加载例如引入外...

  • 8-4 页面加载 - 解答

    比如jquery判断页面加载完,用的是后面这个。如果用第一个,有的网站快,有的网站慢,性能很差,但是html文件就...

网友评论

      本文标题:三行代码让你网站加载快100倍!

      本文链接:https://www.haomeiwen.com/subject/qwbdmttx.html