js图片实时加载提供网页打开速度

前端之家收集整理的这篇文章主要介绍了js图片实时加载提供网页打开速度前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

浏览大型网站,特别是图片比较多的图片,如大型的电商网站,你会发现处了第一屏外,往下滚动的时候图片才加载出来,没必要一开始加载就要把全部图片加载出来,这样子打开网面的速度得到了很好提高。以下是笔者目前所想到的思路,如果有更好的思路,望不吝赐教。

其实实时加载图片思路很简单,页面一开始加载的时候把不需要一开始就加载的图片(如第二屏以下的图片,反正是要往下滚动才能看到的,不如把它们设置成往下滚动的时候再实时加载)路径保持到一个自定义属性里,如:

19岁女孩直面癌症 7年前曾截肢

,src="http://ctc.qzonestyle.gtimg.cn/ac/b.gif"是一个1px*1px的透明gif图片自定义属性data-src里的"http://y3.ifengimg.com/a/2014_37/03c4830691a6d8b.jpg"才是图片的路径,往下滚动到它的时候把data-src里的值替换掉src的值,然后把data-src属性移除掉……

如下是demo

js<a href="https://www.jb51.cc/tag/tupian/" target="_blank" class="keywords">图片</a>实时加载
cont2
  • 19岁女孩直面癌症 7年前曾截肢

  • 19岁女孩直面癌症 7年前曾截肢

  • 19岁女孩直面癌症 7年前曾截肢

  • 19岁女孩直面癌症 7年前曾截肢

  • 19岁女孩直面癌症 7年前曾截肢

cont3

如上demo里的cont1里的图片是一加载页面显示的,对于首页布局是固定的,可以确认那些图片是第二屏以下的,但是对于内容页,主体内容容器里的图片出现的位置是不可控制的,这就需要加载完毕真个页面的时候再判断是不是在在可视范围内,如果是在可视范围内就把它加载出来(当然,首页也可这么做,但是如果网速很慢,那么打开首页的时候要等到整个页面架构加载完毕之后才显示图片,而不是从上而下加载出来),图片要设置width与height属性,这让它在页面占一个位置,不然为加载前它只占透明gif图片的大小位置。

如下demo针对内容页做了一点修改,window.onload、window.onscroll的时候都触发加载

js<a href="https://www.jb51.cc/tag/tupian/" target="_blank" class="keywords">图片</a>实时加载
7年前截肢的19岁癌症晚期女孩

http://www.cnblogs.com/xiaomou2014

http://www.cnblogs.com/xiaomou2014

http://www.cnblogs.com/xiaomou2014

7年前截肢的19岁癌症晚期女孩

19岁女孩直面癌症 7年前曾截肢

7年前截肢的19岁癌症晚期女孩

19岁女孩直面癌症 7年前曾截肢

7年前截肢的19岁癌症晚期女孩

19岁女孩直面癌症 7年前曾截肢

7年前截肢的19岁癌症晚期女孩

19岁女孩直面癌症 7年前曾截肢

7年前截肢的19岁癌症晚期女孩

19岁女孩直面癌症 7年前曾截肢

原文链接:https://www.f2er.com/js/57787.html

猜你在找的JavaScript相关文章