当前位置: 首页 > news >正文

网页设计国外设计欣赏网站py网站开发视频教程

网页设计国外设计欣赏网站,py网站开发视频教程,wordpress设置收费下载,装修推广平台哪个效果好首先解释一下什么叫图片懒加载。图片懒加载是一种在页面加载时,延迟加载图片资源的技术,也就是说图片资源在需要的时候才会加载,就是在屏幕显示范围内加载图片,屏幕显示范围外图片不加载。 一、关键函数 用到的关键函数&#xf…

首先解释一下什么叫图片懒加载。图片懒加载是一种在页面加载时,延迟加载图片资源的技术,也就是说图片资源在需要的时候才会加载,就是在屏幕显示范围内加载图片,屏幕显示范围外图片不加载。

一、关键函数

用到的关键函数:globalThis.IntersectionObserver。

var observer = new IntersectionObserver(callback,options);

IntersectionObserver两个参数:

  1. callback是当被监听元素的可见性变化时,触发的回调函数。一般会调用两次:一次是目标元素刚刚进入视口(开始可见),另一次是完全离开视口(开始不可见)。
  2. options是一个配置参数,可选,有默认的属性值

官方的示例代码

var observer = new IntersectionObserver(changes => {for (const change of changes) {console.log(change.time);// Timestamp when the change occurred// 当可视状态变化时,状态发送改变的时间戳// 对比时间为,实例化的时间,// 比如,值为1000时,表示在IntersectionObserver实例化的1秒钟之后,触发该元素的可视性变化console.log(change.rootBounds);// Unclipped area of root// 根元素的矩形区域信息,即为getBoundingClientRect方法返回的值console.log(change.boundingClientRect);// target.boundingClientRect()// 目标元素的矩形区域的信息console.log(change.intersectionRect);// boundingClientRect, clipped by its containing block ancestors,// and intersected with rootBounds// 目标元素与视口(或根元素)的交叉区域的信息console.log(change.intersectionRatio);// Ratio of intersectionRect area to boundingClientRect area// 目标元素的可见比例,即intersectionRect占boundingClientRect的比例,// 完全可见时为1,完全不可见时小于等于0console.log(change.target);// the Element target// 被观察的目标元素,是一个 DOM 节点对象// 当前可视区域正在变化的元素}
}, {});// Watch for intersection events on a specific target Element.
// 对元素target添加监听,当target元素变化时,就会触发上述的回调
observer.observe(target);// Stop watching for intersection events on a specific target Element.
// 移除一个监听,移除之后,target元素的可视区域变化,将不再触发前面的回调函数
observer.unobserve(target);// Stop observing threshold events on all target elements.
// 停止所有的监听
observer.disconnect();
在这里插入代码片

下面开始实现我们的图片懒加载。

二、Javascript关键代码如下:

lazy: function() {var action ={setFront:function(item){if(item.boundingClientRect.top<=window.innerHeight+100){						var img = new Image();img.src = item.target.link;img.onload = function(){item.target.setAttribute("myth-lazy","finished");item.target.src=item.target.link;};obs.unobserve(item.target);}				}};if(globalThis.IntersectionObserver){var obs = new IntersectionObserver(function(changes){changes.forEach(function(t){action.setFront(t);});	});this.each(function(item){item.link = item.getAttribute("myth-thumb")||item.getAttribute("myth-original");if(!item.getAttribute("myth-lazy")) obs.observe(item);})}}

这里说明一下,这段代码是嫁到我们以前js框架myth.js中的,想看完整结构的在文章末尾下载相关代码。

二、HTML代码如下:

<div class="mythBox mid"><img class="imglazy"  src="img/loading.gif" myth-original="img/1.png"/><img class="imglazy"   src="img/loading.gif" myth-original="img/2.png"/><img class="imglazy"   src="img/loading.gif" myth-original="img/3.png"/><img class="imglazy"   src="img/loading.gif" myth-original="img/4.png"/><img class="imglazy"   src="img/loading.gif" myth-original="img/3.png"/><img class="imglazy"  src="img/loading.gif" myth-original="img/1.png"/><img class="imglazy"   src="img/loading.gif" myth-original="img/2.png"/><img class="imglazy"   src="img/loading.gif" myth-original="img/3.png"/><img class="imglazy"   src="img/loading.gif" myth-original="img/4.png"/><img class="imglazy"   src="img/loading.gif" myth-original="img/2.png"/></div>	<script type="text/javascript">					myth(".imglazy").lazy(true);					</script>

三、展示效果

请添加图片描述
请添加图片描述
第二张图,下面的代码能清楚的看到,展示在用户的部分图片已经展示,未在用户视野范围内的图片还没有展示,指示原来的替代图片。

四、代码下载

源代码下载:请单击

http://www.yayakq.cn/news/514599/

相关文章:

  • 厦门杏林建设企业网站网站建设 自查表
  • 网站建设类课题的研究方法网页制作中网站名称怎么做
  • 做网站Linux湖北省建设厅网站a群
  • 河南便宜网站建设做的网站怎么放视频
  • 怎样做网络推广软件系统优化游戏性能的软件
  • 网站做到赣州第一名要多少钱设计公司网站模板
  • 上海湖南网站建设优秀网页欣赏
  • 广东网站制作报价惠州网站建设排名
  • 国内简约网站东莞网站seo
  • 廊坊做网站的企业哪家好万远翔网站建设
  • js代码 嵌入网站门户网站改版建议
  • 制作快递网站wordpress 连接微博
  • 宁波网站开发公司怎么样有做网站维护的
  • 上海电子商务网站建设网站开发公司+重庆
  • 接网站建设_网站设计做暧暧网站在线
  • 楚雄 公司 网站seo自动优化软件
  • 做像58同城这样的网站能用mysql数据库吗搜索引擎优化的定义是什么
  • 网站开发中标签栏的图标一般都在那个文件中写代码网站开发技术可以做什么工作
  • 交互设计个人网站网站 seo优化
  • 网站建设的总体设计思想企业产品推广平台
  • 如何给公司做一个网站外包公司员工是否受劳动法保护
  • 电脑版网站制作公司茶山网站仿做
  • 做网站安卓客户端备案需要网站吗
  • 设计师平台网站投资建设网站首页
  • 做期权注册网站做课件的网站有哪些
  • 淘宝客网站 建设要钱不以图搜图百度识图网页版
  • c++可以做网站吗泉州有哪些公司是做网站
  • 网站项目建设主要内容阿里云网站建设优化
  • 网站链接怎么做标记网站建设团队技术介绍
  • 如何查看一个网站是否备案外包网站开发多少钱