ImagesLazyLoad 图片延迟加载效果
作者 佚名技术
来源 网页制作
浏览
发布时间 2012-03-06
){ return img.getAttribute( attribute ) || img.src; }, opt.holder ); this._elems = $A.filter( opt.images || this._container.getElementsByTagName("img"), filter ); //判断属性是否已经加载的方法 this._hasAttribute = $B.ie6 || $B.ie7 ? function(img){ return attribute in img; } : function(img){ return img.hasAttribute( attribute ); }; }, //设置默认属性 _setOptions: function(options) { return LazyLoad.prototype._setOptions.call(this, $.extend({//默认值 images: undefined,//图片集合 attribute: "_lazysrc",//保存原图地址的自定义属性 holder: "",//占位图 "class": "",//筛选样式 getSrc: undefined,//获取原图地址程序 onLoad: function(){}//加载时执行 }, $.extend( options, { onLoadData: this._onLoadData }))); }, //筛选整理图片对象 _filter: function(cls, getSrc, holder, img) { if ( cls && img.className !== cls ) return false;//排除样式不对应的 //获取原图地址 var src = getSrc(img); if ( !src ) return false;//排除src不存在的 if ( src == img.src ) { //排除已经加载或不能停止加载的 if ( img.complete || $B.chrome || $B.safari ) return false; img.removeAttribute("src");//移除src } if ( holder ) { img.src = holder; } //用自定义属性记录原图地址 img.setAttribute( this._attribute, src ); return true; }, //显示图片 _onLoadData: function(img) { var attribute = this._attribute; if ( this._hasAttribute( img ) ) { img.src = img.getAttribute( attribute ); img.removeAttribute( attribute ); this.onLoad( img ); } } });
完整实例下载 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于ImagesLazyLoad 图片延迟加载效果的所有评论