js代理模式怎么用?
概念
为一个对象提供一个代用品或占位符,以便控制对它的访问。
使用方法
1、常用的虚拟代理形式:某个耗费大的操作可以通过虚拟代理延迟到需要它的时候创建(例如,使用虚拟代理实现图像的懒惰加载)。
2、懒惰加载图片的方式:先用loading图片占位,再用异步加载图片,等图片加载完毕后再将完成的图片加载到img标签中。
实例
代码语言:javascript复制var imgFunc = (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() {
imgFunc.setSrc(this.src);
}
return {
setSrc: function(src) {
imgFunc.setSrc('./loading,gif');
img.src = src;
}
}
})();
proxyImage.setSrc('./pic.png');
以上就是js代理模式的使用,希望对大家有所帮助