设计模式---003代理模式(转载自我的老师 Alley-巷子)
一、什么是代理模式
解释:为其他对象提供一种代理以控制对这个对象的访问
二、案例一
需求:如果有人需要找宝宝拍电影,那么首先必须找到吉吉。
分析:对象:宝宝、吉吉
三、案例三
用代理模式实现图片预加载
function CreateImg(){ //创建img标签 var img = document.createElement("img"); //设置img的路径为一个loading img.src = "loading.gif"; //插入页码 document.body.appendChild(img); //当图片缓存完毕以后替换loading this.setSrc = function(url){ img.src = url; } } function ProxyImg(){ var target = new CreateImg(); //创建Image对象 var img = new Image(); //缓存一张图片 img.onload = function(){ //当图片缓存完毕后赋值给createImage target.setSrc(this.src) } //设置缓存图片路径 this.setSrc = function(url){ img.src = url } } var img = new ProxyImg(); img.setSrc("w1.jpg");