设计模式---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");


浙公网安备 33010602011771号