加入收藏 | 设为首页 | 会员中心 | 我要投稿 吉安站长网 (https://www.0796zz.com.cn/)- 科技、图像处理、媒体智能、办公协同、操作系统!
当前位置: 首页 > 站长资讯 > 动态 > 正文

vue-lazyload 图片懒加载

发布时间:2021-03-25 12:22:16 所属栏目:动态 来源:互联网
导读:简述: 1)vue-lazyload是通过指令的方式实现的,定义的指令是v-lazy指令; 2)指令被bind时会创建一个listener,并将其添加到listener queue里面, 并且搜索target dom节点,为其注册dom事件(如scroll事件); 3)上面的dom事件回调中,会遍历 listener queue里的

简述:

1)vue-lazyload是通过指令的方式实现的,定义的指令是v-lazy指令;

2)指令被bind时会创建一个listener,并将其添加到listener queue里面, 并且搜索target dom节点,为其注册dom事件(如scroll事件);

3)上面的dom事件回调中,会遍历 listener queue里的listener,判断此listener绑定的dom是否处于页面中perload的位置,如果处于则加载异步加载当前图片的资源;

4)同时listener会在当前图片加载的过程的loading,loaded,error三种状态触发当前dom渲染的函数,分别渲染三种状态下dom的内容;

二、源码解析:

1、在组件install安装时,调用LazyClass返回了一个class对象,然后创建了一个class实例。

2、其核心是lazyLoadHandler()函数,是经过节流函数处理的图片加载的入口函数。


 

3、主要操作:找到对应的target(用于注册dom事件的dom节点;比如:页面滚动的dom节点),为其注册dom事件;为当前dom创建Listenr并添加到listener queue中。最后用lazyLoadHandler()函数,加载图片。

4、当满足条件,调用load()函数异步加载图片。

(编辑:吉安站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读