/*
Copyright (c) 2009, Kissy UI Library. All rights reserved.
MIT Licensed.
http://kissy.googlecode.com/

Date: 2009-10-29 16:07:05
Revision: 249
*/
var KISSY=window.KISSY||{};(function(){var b=YAHOO.util,f=b.Dom,i=b.Event,h=YAHOO.lang,a="data-lazyload-src",d={AUTO:"auto",MANUAL:"manual"},g="default",e={mod:d.AUTO,diff:g,placeholder:"http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif"};var c=function(k,j){if(!(this instanceof arguments.callee)){return new arguments.callee(k,j)}if(typeof j==="undefined"){j=k;k=[document]}if(!h.isArray(k)){k=[f.get(k)||document]}this.containers=k;this.config=h.merge(e,j||{});this._init()};h.augmentObject(c.prototype,{_init:function(){this.threshold=this._getThreshold();this.images=this._filterImgs();if(this.images.length>0){this._initLoadEvent()}},_getThreshold:function(){var k=this.config.diff,j=f.getViewportHeight();if(k===g){return 2*j}else{return j+k}},_initLoadEvent:function(){var l,k=this;i.on(window,"scroll",j);i.on(window,"resize",function(){k.threshold=k._getThreshold();j(true)});if(this.config.mod===d.MANUAL){i.onDOMReady(function(){k._loadImgs(true)})}function j(m){if(l){return}l=setTimeout(function(){k._loadImgs(m);if(k.images.length===0){i.removeListener(window,"scroll",j);i.removeListener(window,"resize",j)}l=null},100)}},_filterImgs:function(){var k=this.containers,q=this.threshold,u=this.config.placeholder,l=this.config.mod===d.MANUAL,j,t,p,o,r,m,v,s=[];for(j=0,t=k.length;j<t;++j){p=k[j].getElementsByTagName("img");for(o=0,r=p.length;o<r;++o){m=p[o];v=m.getAttribute(a);if(l){if(v){m.src=u;s.push(m)}}else{if(f.getY(m)>q&&!v){m.setAttribute(a,m.src);m.src=u;s.push(m)}}}}return s},_loadImgs:function(m){var n=f.getDocumentScrollTop();if(!m&&n<=this.config.diff){return}var q=this.images,j=this.threshold+n,l,k,p,o=[];for(l=0,k;k=q[l++];){if(f.getY(k)<=j){p=k.getAttribute(a);if(p&&k.src!=p){k.src=p;k.removeAttribute(a)}}else{o.push(k)}}this.images=o}});KISSY.ImageLazyload=c})();
