javascript图片延迟加载实现方法及思路_javascript技巧

javascript图片延迟加载实现方法及思路_javascript技巧

ID:31191942

大小:73.00 KB

页数:4页

时间:2019-01-07

javascript图片延迟加载实现方法及思路_javascript技巧_第1页
javascript图片延迟加载实现方法及思路_javascript技巧_第2页
javascript图片延迟加载实现方法及思路_javascript技巧_第3页
javascript图片延迟加载实现方法及思路_javascript技巧_第4页
资源描述:

《javascript图片延迟加载实现方法及思路_javascript技巧》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、javascript图片延迟加载实现方法及思路本文实例为人家介绍了如何通过javascript來延迟加载图片,分享给人家供人家参考,具体内容如下当一个网页屮含冇大量图片时,如果一开始就将图片全部加载完毕,势必会引起性能和效率上的问题,用户可能会由于等待时间过久而离开。这个吋候,我们需要利用懒加载,也就是延迟加载图片的方式,来提高网站的亲和力。一、延迟加载图片基本思路如下:给需要延迟加载的图片设置自定义属性比如lazy-src,存在图片源所在路径。然后将所有需要懒加载的图片放入一个数组,在window,on

2、scroll的吋候判断该数组内容是否出现在了用户视线中,如果出现了,就将自定义属性内容赋予图片的src属性。下而我们来具体谈谈实现步骤。首先,我们需要定义函数返冋浏览器的可视区域位置:/***©description:返回浏览器的可视区域位置*@return:left:左滑轮距离,top:上滑轮距离,width:可见区域宽度,height:可见区域长度*/functiongetClient(){var1,t,w,h;1=document.documentElement.scrollLeft

3、

4、docume

5、nt.body.scrollLeft;t二document.documentElement.scrollTopI

6、document.body.scrollTop;w=document,documenlElement,clienlWidth;h=document.documentElement.dientlleight;rctuim{left:1,top:t,width:w,height:h};}然后定义函数返冋待加载资源的位置:/***©description:返回待加载资源位置*©params:p:需要

7、加载的资源节点*©return:left:左边距离,top:上边距离,width:宽度,height:高度*/functiongetSubClient(p){var1=0,t二0,w,h;w=p.offsctWidth;h=p.offsetHeight;while(p.offsetParent){1+二p.offsetLeft;t+二p.offsetTop;p=p.offsctParcnt;}return{left:1,top:t,width:w,height:h};}接下来定义函数,判断两个矩形区域是否

8、相交:/***@decription:判断两个矩阵是否相交,返冋一个布尔值*©params:recl,rec2:需要比较的节点矩阵*@rcturn:true:两矩阵相交*/functioncontains(reel,rec2){varlcl,lc2,tel,tc2,wl,hl;lei二reel,left+reel,width/2;lc2=rcc2.left+rcc2.width/2;tel=reel.top+reel・height/2;tc2=rec2.top+rec2.height/2;wl二(reel

9、,width+rec2.width)/2;hl二(reel,height+rec2.height)/2;rcturnMath,abs(lcl-lc2)

10、Client();varprcc2;for(vari=arr.1ength-1;i>=0;i--){if(arr[i]){prec2二getSubClient(arr[i]);if(contains(precl,prec2)){〃加载资源consolc.log(eirr[i]・id);arr[i]・childNodes[0]・src=arr[i].childNodes[0].getAttribute(,zlazy_src,z);deletearr[i];当然,这里只是讲思路,如果用到工程上,还是有很多缺陷

11、,比如性能和兼容性等。所以推荐一款jquery插件:lazyload1、判断css加载完成这里顺便说一下如何判断一个web页而的css文件加载完成。我们知道css通过外部文件引入,其实是一个link节点。所以我们只需要通过轮询来判断该link节点的sheet属性或者sheet.cssRules属性,就可以判断该css文件是否完全加载成功。2、判断图片加载完成同样的,img标签有一个complete屈性,我们只需要通过轮询来查看

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。