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

长沙市天心区城乡建设局网站腾讯建设网站视频视频视频

长沙市天心区城乡建设局网站,腾讯建设网站视频视频视频,网站优化协议,中国万网网址#x1f618;博主#xff1a;小猫娃来啦 #x1f618;文章核心#xff1a;JavaScript的懒加载处理 文章目录 什么是懒加载实现懒加载的方式js四步法设置占位图监听滚动事件加载图片触发加载函数 什么是懒加载 懒加载#xff08;Lazy Loading#xff09;是一种优化技术博主小猫娃来啦 文章核心JavaScript的懒加载处理 文章目录 什么是懒加载实现懒加载的方式js四步法设置占位图监听滚动事件加载图片触发加载函数 什么是懒加载 懒加载Lazy Loading是一种优化技术它可以延迟加载某些资源直到它们真正需要被使用的时候才进行加载。这种技术可以提升应用程序或网站的性能减少初始加载时间。 实现懒加载的方式 实现懒加载的方法一般分为两种基于 Intersection Observer API 的懒加载和基于滚动事件的懒加载。 Intersection Observer API 是一个新的浏览器 API它可以异步观察目标元素与其祖先元素或顶级文档视窗的交集情况。我们可以使用它来实现懒加载。 下面是一种实现懒加载的常见方式Intersection Observer API 在HTML中标记需要延迟加载的元素通常是图片、视频等资源。可以使用data属性或class来添加标记。 示例 img classlazy data-srcimage.jpg altLazy-loaded Image使用JavaScript监听页面滚动事件或其他触发事件检查需要加载的元素是否进入了可视区域。 使用Intersection Observer API // 观察器选项 const options {root: null, // 默认为视窗rootMargin: 0px,threshold: 0.5 // 当目标元素50%可见时触发加载 };const handleIntersection (entries,) {entries.forEach(entry {if (entry.isIntersecting) {// 加载目标元素const target entry.target;target.src target.dataset.src;observer.unobserve(target);}}); };// 创建一个观察器实例 const observer new IntersectionObserver(handleIntersection, options);// 找到所有需要懒加载的元素并进行观察 const lazyElements document.querySelectorAll(.lazy); lazyElements.forEach(element {observer.observe(element); });我们通过Intersection Observer API来监听目标元素是否进入可视区域并在元素可见时将data-src属性的值赋给src属性来加载资源。观察器选项可以根据需求进行调整。 或者说你也可以根据一定的步骤去实现 js四步法 设置占位图 在HTML中将需要懒加载的图片的src属性设置为一个占位图可以是一张小尺寸、模糊或单色的图片表示图片正在加载。 img srcplaceholder.jpg data-srcimage-to-lazy-load.jpg altLazy-loaded Image监听滚动事件 使用JavaScript监听页面的滚动事件当滚动事件触发时判断懒加载图片是否进入了可视区域。 window.addEventListener(scroll, function() {// 判断懒加载图片是否进入可视区域// 如果图片进入可视区域则触发加载图片的函数 });加载图片 当懒加载图片进入可视区域时将占位图的data-src属性值赋给src属性从而触发加载图片。 function lazyLoad() {const lazyImages document.querySelectorAll(img[data-src]);lazyImages.forEach(function(img) {if (isInViewport(img)) {img.src img.dataset.src;img.removeAttribute(data-src);}}); }function isInViewport(element) {var rect element.getBoundingClientRect();return (rect.bottom 0 rect.right 0 rect.top (window.innerHeight || document.documentElement.clientHeight) rect.left (window.innerWidth || document.documentElement.clientWidth)); }触发加载函数 在滚动事件中触发加载函数实现懒加载的效果。 window.addEventListener(scroll, function() {lazyLoad(); });这也是一种实现懒加载的方式但需要注意的是在实际使用中可能需要根据具体情况进行适当的调整和优化例如添加防抖和节流机制处理图片加载失败等情况。同时还可以使用现有的懒加载库来简化代码并实现更多功能。
http://www.huolong8.cn/news/134492/

相关文章:

  • 苏州市住房和城乡建设局信息网站比较好用的搜索引擎
  • 东莞最好的网站wordpress干什么用的
  • 网站建设 视频安装好了wordpress
  • 刘涛现在哪个网站做直播wordpress 自动发卡
  • 网页制作与网站建设完全学习手册光盘贸易公司logo设计
  • 新乡网站建设制作公司wordpress悬浮反馈
  • 怎么查网站是否备案有没有公司做农副产品网站的
  • 福州模板建站定制网站网址大全2345色综合导航
  • 南宁在线制作网站石家庄网络推广优化
  • dreamwear做网站步骤网站申请好了 怎么建设
  • 万网个人网站建设教程网站设计
  • 免费商城网站申请便民平台推广怎么做
  • 公司官方网站建设申请自己怎么制作企业网站
  • 网站分站如何做html基础知识思维导图
  • 崇仁网站建设推广网站空间不够用
  • 用模板搭建的网站备案吗做婚纱影楼网站的价格
  • 企业做网站需要那些条件自媒体营销代理
  • 企业设计网站公司排名西安网上注册公司流程
  • 哈尔滨建设银行网站首页企业app软件定制开发环节
  • 做网站的前途个人可以做导航网站吗
  • 找人做个网站建设制作报价方案wordpress换域名主题
  • 英语培训学校网站怎么做cms系统表单
  • 京东的网站是哪家公司做永清县建设局网站
  • h5和手机网站wordpress 自定义链接
  • 网站支付功能怎么做设计网站都有哪些
  • 电力建设期刊网站经常维护吗福州如何做百度的网站
  • 哪个网站的ps元素好网站建设需要具备
  • 网站建设多少钱 知乎网站制作咨询
  • 怎么用frontpage做网站什么网站做装修的
  • 网站seo外链平台紧固件做网站有效果吗