博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计模式代理
阅读量:7079 次
发布时间:2019-06-28

本文共 670 字,大约阅读时间需要 2 分钟。

虚拟代理实现图片预加载

预加载图片在Web开发中十分常用,其通过异步的方式加载图片,利用一张loading图片占位。等图片加载好之后把图片填充到img节点中。

var myImage = (function(){  var imgNode = document.createElement('img')  document.body.appendChild(imgNode)  return {    setSrc: function(src){      imgNode.src = src    }  }})()var proxyImage = (function(){  var img = new Image()  img.onload = function(){    myImage.setSrc(this.src)  }  return {    setSrc: function(src){       myImage.setSrc('loading.gif')      img.src = src    }  }})()proxyImage.setSrc('realImage.jpg')

通过proxyImage间接的访问了MyImageproxyImage控制了客户对MyImage的访问,并且在此过程中加入了一些额外的操作,比如在真正的图片加载好之前,先把img节点的src设置为一张loading图片。

 

转载于:https://www.cnblogs.com/yayaxuping/p/9680266.html

你可能感兴趣的文章
【译Py】数据科学面试终极指南04
查看>>
PyCodeInjectionShell - 自动Python代码注入工具
查看>>
sharding-jdbc不分库策略在springboot的application.properties中的写法
查看>>
SEO权重的优化1
查看>>
Linux基本bash命令(持续更新)
查看>>
[JavaScript 学习笔记] 2. 继承
查看>>
使用gdebi去解决安装deb包的时候软件依赖问题
查看>>
SOP 1.6.0 发布,开放平台解决方案项目
查看>>
Java并发编程笔记之AbstractQueuedSynchronizer源码分析
查看>>
AI戒毒?没错,北京开始这么干了
查看>>
第178天:表单验证
查看>>
HTTP配置文件详解(访问控制、虚拟主机、DEFLATE、HTTPS配置
查看>>
数据库分离附加(附日记丢失的处理)
查看>>
开启HDR视觉盛宴:究竟什么视频算得上HDR?
查看>>
阿里云视频点播播放常见问题排查指南
查看>>
Java最全异常讲解
查看>>
Android保持屏幕常亮
查看>>
JS-DOM2级事件对象跨浏览器处理(已封装)
查看>>
用户名和密码校验程序
查看>>
浅析Java RTTI 和 反射的概念
查看>>