/* Copyright 2012, KISSY UI Library v1.30rc MIT Licensed build time: Nov 9 16:34 */ /** * @ignore * @fileOverview A seed where KISSY grows up from , KISS Yeah ! * @author lifesinger@gmail.com, yiminghe@gmail.com */ (function(S,undefined){function hasOwnProperty(o,p){return Object.prototype.hasOwnProperty.call(o,p);} var host=this,MIX_CIRCULAR_DETECTION='__MIX_CIRCULAR',hasEnumBug=!({toString:1}.propertyIsEnumerable('toString')),enumProperties=['hasOwnProperty','isPrototypeOf','propertyIsEnumerable','toString','toLocaleString','valueOf'],meta={mix:function(r,s,ov,wl,deep){if(typeof ov==='object'){wl=ov['whitelist'];deep=ov['deep'];ov=ov['overwrite'];} var cache=[],c,i=0;mixInternal(r,s,ov,wl,deep,cache);while(c=cache[i++]){delete c[MIX_CIRCULAR_DETECTION];} return r;}},mixInternal=function(r,s,ov,wl,deep,cache){if(!s||!r){return r;} if(ov===undefined){ov=true;} var i=0,p,len;s[MIX_CIRCULAR_DETECTION]=r;cache.push(s);if(wl&&(len=wl.length)){for(;i','<':'<','`':'`','/':'/','"':'"',''':"'"},reverseEntities={},escapeReg,unEscapeReg,escapeRegExp=/[\-#$\^*()+\[\]{}|\\,.?\s]/g;(function(){for(var k in htmlEntities){if(htmlEntities.hasOwnProperty(k)){reverseEntities[htmlEntities[k]]=k;}}})();function getEscapeReg(){if(escapeReg){return escapeReg} var str=EMPTY;S.each(htmlEntities,function(entity){str+=entity+'|';});str=str.slice(0,-1);return escapeReg=new RegExp(str,'g');} function getUnEscapeReg(){if(unEscapeReg){return unEscapeReg} var str=EMPTY;S.each(reverseEntities,function(entity){str+=entity+'|';});str+='&#(\\d{1,5});';return unEscapeReg=new RegExp(str,'g');} function isValidParamValue(val){var t=typeof val;return val==null||(t!=='object'&&t!=='function');} S.mix(S,{stamp:function(o,readOnly,marker){if(!o){return o} marker=marker||STAMP_MARKER;var guid=o[marker];if(guid){return guid;}else if(!readOnly){try{guid=o[marker]=S.guid(marker);} catch(e){guid=undefined;}} return guid;},noop:function(){},type:function(o){return o==null?String(o):class2type[toString.call(o)]||'object';},isNull:function(o){return o===null;},isUndefined:function(o){return o===undefined;},isEmptyObject:function(o){for(var p in o){if(p!==undefined){return FALSE;}} return TRUE;},isPlainObject:function(o){return o&&toString.call(o)==='[object Object]'&&'isPrototypeOf'in o;},equals:function(a,b,mismatchKeys,mismatchValues){mismatchKeys=mismatchKeys||[];mismatchValues=mismatchValues||[];if(a===b){return TRUE;} if(a===undefined||a===null||b===undefined||b===null){return a==null&&b==null;} if(a instanceof Date&&b instanceof Date){return a.getTime()==b.getTime();} if(S.isString(a)&&S.isString(b)){return(a==b);} if(S.isNumber(a)&&S.isNumber(b)){return(a==b);} if(typeof a==='object'&&typeof b==='object'){return compareObjects(a,b,mismatchKeys,mismatchValues);} return(a===b);},clone:function(input,filter){var memory={},ret=cloneInternal(input,filter,memory);S.each(memory,function(v){v=v.input;if(v[CLONE_MARKER]){try{delete v[CLONE_MARKER];}catch(e){S.log('delete CLONE_MARKER error : ');v[CLONE_MARKER]=undefined;}}});memory=null;return ret;},trim:trim?function(str){return str==null?EMPTY:trim.call(str);}:function(str){return str==null?EMPTY:str.toString().replace(RE_TRIM,EMPTY);},substitute:function(str,o,regexp){if(!S.isString(str)||!S.isPlainObject(o)){return str;} return str.replace(regexp||/\\?\{([^{}]+)\}/g,function(match,name){if(match.charAt(0)==='\\'){return match.slice(1);} return(o[name]===undefined)?EMPTY:o[name];});},each:function(object,fn,context){if(object){var key,val,i=0,length=object&&object.length,isObj=length===undefined||S.type(object)==='function';context=context||null;if(isObj){for(key in object){if(fn.call(context,object[key],key,object)===FALSE){break;}}}else{for(val=object[0];i=0;i--){if(arr[i]===item){break;}} return i;},unique:function(a,override){var b=a.slice();if(override){b.reverse();} var i=0,n,item;while(i-1;},filter:filter?function(arr,fn,context){return filter.call(arr,fn,context||this);}:function(arr,fn,context){var ret=[];S.each(arr,function(item,i,arr){if(fn.call(context||this,item,i,arr)){ret.push(item);}});return ret;},map:map?function(arr,fn,context){return map.call(arr,fn,context||this);}:function(arr,fn,context){var len=arr.length,res=new Array(len);for(var i=0;i=3){accumulator=arguments[2];} else{do{if(k in arr){accumulator=arr[k++];break;} k+=1;if(k>=len){throw new TypeError();}} while(TRUE);} while(k=0&&str.indexOf(suffix,ind)==ind;},throttle:function(fn,ms,context){ms=ms||150;if(ms===-1){return(function(){fn.apply(context||this,arguments);});} var last=S.now();return(function(){var now=S.now();if(now-last>ms){last=now;fn.apply(context||this,arguments);}});},buffer:function(fn,ms,context){ms=ms||150;if(ms===-1){return function(){fn.apply(context||this,arguments);};} var bufferTimer=null;function f(){f.stop();bufferTimer=S.later(fn,ms,FALSE,context||this,arguments);} f.stop=function(){if(bufferTimer){bufferTimer.cancel();bufferTimer=0;}};return f;}});S.mix(S,{isBoolean:isValidParamValue,isNumber:isValidParamValue,isString:isValidParamValue,isFunction:isValidParamValue,isArray:isValidParamValue,isDate:isValidParamValue,isRegExp:isValidParamValue,isObject:isValidParamValue});S.each('Boolean Number String Function Array Date RegExp Object'.split(' '),function(name,lc){class2type['[object '+name+']']=(lc=name.toLowerCase());S['is'+name]=function(o){return S.type(o)==lc;}});function cloneInternal(input,f,memory){var destination=input,isArray,isPlainObject,k,stamp;if(!input){return destination;} if(input[CLONE_MARKER]){return memory[input[CLONE_MARKER]].destination;}else if(typeof input==='object'){var constructor=input.constructor;if(S.inArray(constructor,[Boolean,String,Number,Date,RegExp])){destination=new constructor(input.valueOf());} else if(isArray=S.isArray(input)){destination=f?S.filter(input,f):input.concat();}else if(isPlainObject=S.isPlainObject(input)){destination={};} input[CLONE_MARKER]=(stamp=S.guid());memory[stamp]={destination:destination,input:input};} if(isArray){for(var i=0;i=0;i--){var last=parts[i];if(last=='.'){parts.splice(i,1);}else if(last==='..'){parts.splice(i,1);up++;}else if(up){parts.splice(i,1);up--;}} if(allowAboveRoot){for(;up--;up){parts.unshift('..');}} return parts;} var Path={resolve:function(){var resolvedPath='',resolvedPathStr,i,args=S.makeArray(arguments),path,absolute=0;for(i=args.length-1;i>=0&&!absolute;i--){path=args[i];if(typeof path!='string'||!path){continue;} resolvedPath=path+'/'+resolvedPath;absolute=path.charAt(0)=='/';} resolvedPathStr=normalizeArray(S.filter(resolvedPath.split('/'),function(p){return!!p;}),!absolute).join('/');return((absolute?'/':'')+resolvedPathStr)||'.';},normalize:function(path){var absolute=path.charAt(0)=='/',trailingSlash=path.slice(-1)=='/';path=normalizeArray(S.filter(path.split('/'),function(p){return!!p;}),!absolute).join('/');if(!path&&!absolute){path='.';} if(path&&trailingSlash){path+='/';} return(absolute?'/':'')+path;},join:function(){var args=S.makeArray(arguments);return Path.normalize(S.filter(args,function(p){return p&&(typeof p=='string');}).join('/'));},relative:function(from,to){from=Path.normalize(from);to=Path.normalize(to);var fromParts=S.filter(from.split('/'),function(p){return!!p;}),path=[],sameIndex,sameIndex2,toParts=S.filter(to.split('/'),function(p){return!!p;}),commonLength=Math.min(fromParts.length,toParts.length);for(sameIndex=0;sameIndexpName.length){pName=p;}}} packageDesc=packages[pName]||Env.defaultPackage||(Env.defaultPackage=new Loader.Package({SS:self,name:''}));return packageDesc;} Loader.STATUS={'INIT':0,'LOADING':1,'LOADED':2,'ERROR':3,'ATTACHED':4};})(KISSY);(function(S){S.namespace("Loader");var time=S.now(),p='__events__'+time;function getHolder(self){return self[p]||(self[p]={});} function getEventHolder(self,name,create){var holder=getHolder(self);if(create){holder[name]=holder[name]||[];} return holder[name];} KISSY.Loader.Target={on:function(eventName,callback){getEventHolder(this,eventName,1).push(callback);},detach:function(eventName,callback){var self=this,fns,index;if(!eventName){delete self[p];return;} fns=getEventHolder(self,eventName);if(fns){if(callback){index=S.indexOf(callback,fns);if(index!=-1){fns.splice(index,1);}} if(!callback||!fns.length){delete getHolder(self)[eventName];}}},fire:function(eventName,obj){var fns=getEventHolder(this,eventName);S.each(fns,function(f){f.call(null,obj);});}};})(KISSY);(function(S){if(S.Env.nodejs){return;} var Loader=S.Loader,Path=S.Path,Uri=S.Uri,ua=navigator.userAgent,startsWith=S.startsWith,data=Loader.STATUS,Utils={},host=S.Env.host,isWebKit=!!ua.match(/AppleWebKit/),doc=host.document,simulatedLocation=new Uri(location.href);function indexMap(s){if(S.isArray(s)){var ret=[],i=0;for(;i=0;i--){if((m=mods[ret[i]])&&(alias=m.alias)){ok=0;ret.splice.apply(ret,[i,1].concat(indexMap(alias)));}}} return ret;},normalizeModNamesWithAlias:function(self,modNames,refModName){var ret=[],i,l;if(modNames){for(i=0,l=modNames.length;i1){return callbacks.node;} var head=utils.docHead(),node=doc.createElement('link');callbacks.node=node;node.href=url;node.rel='stylesheet';if(charset){node.charset=charset;} utils.styleOnLoad(node,function(){var callbacks=cssCallbacks[src];S.each(callbacks,function(callback){if(callback){callback.call(node);}});delete cssCallbacks[src];});head.appendChild(node);return node;},getScript:function(url,success,charset){if(S.startsWith(Path.extname(url).toLowerCase(),'.css')){return S.getStyle(url,success,charset);} var src=utils.resolveByPage(url),config=success,error,timeout,timer;if(S.isPlainObject(config)){success=config.success;error=config.error;timeout=config.timeout;charset=config.charset;} var callbacks=jsCallbacks[src]=jsCallbacks[src]||[];callbacks.push([success,error]);if(callbacks.length>1){return callbacks.node;}else{} var head=utils.docHead(),node=doc.createElement('script'),clearTimer=function(){if(timer){timer.cancel();timer=undefined;}};node.src=url;node.async=true;callbacks.node=node;if(charset){node.charset=charset;} var end=function(error){var index=error?1:0;clearTimer();var callbacks=jsCallbacks[src];S.each(callbacks,function(callback){if(callback[index]){callback[index].call(node);}});delete jsCallbacks[src];};if(node.addEventListener){node.addEventListener('load',function(){end(0);},false);node.addEventListener('error',function(){end(1);},false);}else{node.onreadystatechange=function(){var self=this,rs=self.readyState;if(/loaded|complete/i.test(rs)){self.onreadystatechange=null;end(0);}};} if(timeout){timer=S.later(function(){end(1);},timeout*MILLISECONDS_OF_SECOND);} head.insertBefore(node,head.firstChild);return node;}});})(KISSY);(function(S){if(S.Env.nodejs){return;} var Loader=S.Loader,utils=Loader.Utils,configs=S.configs;configs.map=function(rules){var self=this;return self.Config.mappedRules=(self.Config.mappedRules||[]).concat(rules||[]);};configs.mapCombo=function(rules){var self=this;return self.Config.mappedComboRules=(self.Config.mappedComboRules||[]).concat(rules||[]);};configs.packages=function(cfgs){var self=this,name,base,Env=self.Env,ps=Env.packages=Env.packages||{};if(cfgs){S.each(cfgs,function(cfg,key){name=cfg.name||key;base=cfg.base||cfg.path;if(!S.endsWith(base,'/')){base+='/';} cfg.name=name;var baseUri=utils.resolveByPage(base);cfg.base=baseUri.toString();cfg.baseUri=baseUri;cfg.SS=S;delete cfg.path;ps[name]=new Loader.Package(cfg);});}};configs.modules=function(modules){var self=this;if(modules){S.each(modules,function(modCfg,modName){utils.createModuleInfo(self,modName,modCfg);S.mix(self.Env.mods[modName],modCfg);});}};configs.base=function(base){var self=this,baseUri,Config=self.Config;if(!base){return Config.base;} baseUri=utils.resolveByPage(base);Config.base=baseUri.toString();Config.baseUri=baseUri;};})(KISSY);(function(S,undefined){if(S.Env.nodejs){return;} var Loader=S.Loader,Path=S.Path,utils=Loader.Utils;S.augment(Loader,Loader.Target,{__currentModule:null,__startLoadTime:0,__startLoadModuleName:null,add:function(name,fn,config){var self=this,SS=self.SS,mod,requires,mods=SS.Env.mods;if(S.isPlainObject(name)){return SS.config({modules:name});} if(S.isString(name)){utils.registerModule(SS,name,fn,config);mod=mods[name];if(config&&config['attach']===false){return;} if(config){requires=utils.normalizeModNames(SS,config.requires,name);} if(!requires||utils.isAttached(SS,requires)){utils.attachMod(SS,mod);} return;} else if(S.isFunction(name)){config=fn;fn=name;if(utils.IE){name=findModuleNameByInteractive(self);S.log('old_ie get modName by interactive : '+name);utils.registerModule(SS,name,fn,config);self.__startLoadModuleName=null;self.__startLoadTime=0;}else{self.__currentModule={fn:fn,config:config};} return;} S.log('invalid format for KISSY.add !','error');}});function findModuleNameByInteractive(self){var SS=self.SS,scripts=S.Env.host.document.getElementsByTagName('script'),re,i,script;for(i=0;ifinalPackageLength){finalPackageLength=packageBase.length;finalPackagePath=packageBase;finalPackageUri=packages[p].getBaseUri();}}}} if(finalPackagePath){return utils.removeExtname(Path.relative(finalPackageUri.getPath(),src.getPath()));}else if(S.startsWith(srcStr,Config.base)){return utils.removeExtname(Path.relative(Config.baseUri.getPath(),src.getPath()));} S.log('interactive script does not have package config £º'+src,'error');return undefined;}})(KISSY);(function(S){if(S.Env.nodejs){return;} var Loader=S.Loader,data=Loader.STATUS,utils=Loader.Utils,INIT=data.INIT,IE=utils.IE,win=S.Env.host,LOADING=data.LOADING,ERROR=data.ERROR,ALL_REQUIRES='__allRequires',CURRENT_MODULE='__currentModule',ATTACHED=data.ATTACHED;S.augment(Loader,{use:function(modNames,callback){var self=this,SS=self.SS;modNames=utils.getModNamesAsArray(modNames);modNames=utils.normalizeModNamesWithAlias(SS,modNames);var normalizedModNames=utils.unalias(SS,modNames),count=normalizedModNames.length,currentIndex=0;function end(){var mods=utils.getModules(SS,modNames);callback&&callback.apply(SS,mods);} if(utils.isAttached(SS,normalizedModNames)){return end();} S.each(normalizedModNames,function(modName){attachModByName(self,modName,function(){if((++currentIndex)==count){end();}});});return self;}});function attachModByName(self,modName,callback){var SS=self.SS,mod;utils.createModuleInfo(SS,modName);mod=SS.Env.mods[modName];if(mod.status===ATTACHED){callback();return;} attachModRecursive(self,mod,callback);} function attachModRecursive(self,mod,callback){var SS=self.SS,r,rMod,i,callbackBeCalled=0,newRequires,mods=SS.Env.mods;var requires=utils.normalizeModNames(SS,mod.requires,mod.name);function cyclicCheck(){var __allRequires=mod[ALL_REQUIRES]=mod[ALL_REQUIRES]||{},myName=mod.name,rMod,r__allRequires;S.each(requires,function(r){rMod=mods[r];__allRequires[r]=1;if(rMod&&(r__allRequires=rMod[ALL_REQUIRES])){S.mix(__allRequires,r__allRequires);}});if(__allRequires[myName]){S.log(__allRequires,'error');var JSON=win.JSON,error='';if(JSON){error=JSON.stringify(__allRequires);} S.error('find cyclic dependency by mod '+myName+' between mods: '+error);}} S.log(cyclicCheck());for(i=0;imaxFileNum)||(l+t.join(comboSep).length+suffixLength>maxUrlLength)){t.pop();pushComboUrl();t=[];i--;}} if(t.length){pushComboUrl();}}} return res;}});Loader.Combo=ComboLoader;})(KISSY);(function(S){if(S.Env.nodejs){return;} var Loader=S.Loader,utils=Loader.Utils,ComboLoader=S.Loader.Combo;S.mix(S,{add:function(name,fn,cfg){this.getLoader().add(name,fn,cfg);},use:function(names,callback){this.getLoader().use(names,callback);},getLoader:function(){var self=this,env=self.Env;if(self.Config.combine){return env._comboLoader;}else{return env._loader;}},require:function(moduleName){var self=this,mods=self.Env.mods,mod=mods[moduleName];return mod&&mod.value;}});function returnJson(s){return(new Function('return '+s))();} function getBaseInfo(){var baseReg=/^(.*)(seed|kissy)(?:-min)?\.js[^/]*/i,baseTestReg=/(seed|kissy)(?:-min)?\.js/i,comboPrefix,comboSep,scripts=S.Env.host.document.getElementsByTagName('script'),script=scripts[scripts.length-1],src=utils.resolveByPage(script.src).toString(),baseInfo=script.getAttribute('data-config');if(baseInfo){baseInfo=returnJson(baseInfo);}else{baseInfo={};} src=src.replace(/%3f/gi,'?').replace(/%2c/gi,',');comboPrefix=baseInfo.comboPrefix=baseInfo.comboPrefix||'??';comboSep=baseInfo.comboSep=baseInfo.comboSep||',';var parts,base,index=src.indexOf(comboPrefix);if(index==-1){base=src.replace(baseReg,'$1');}else{base=src.substring(0,index);parts=src.substring(index+comboPrefix.length).split(comboSep);S.each(parts,function(part){if(part.match(baseTestReg)){base+=part.replace(baseReg,'$1');return false;}});} return S.mix({base:base,baseUri:new S.Uri(base)},baseInfo);} S.config(S.mix({comboMaxUrlLength:2000,charset:'utf-8',comboMaxFileNum:40,tag:'20121109163450'},getBaseInfo()));(function(){var env=S.Env;env.mods=env.mods||{};env._loader=new Loader(S);env._comboLoader=new ComboLoader(S);})();S.add('empty',S.noop);})(KISSY);(function(S,undefined){var win=S.Env.host,doc=win['document'],docElem=doc.documentElement,location=win.location,navigator=win.navigator,EMPTY='',readyDefer=new S.Defer(),readyPromise=readyDefer.promise,POLL_RETIRES=500,POLL_INTERVAL=40,RE_IDSTR=/^#?([\w-]+)$/,RE_NOT_WHITE=/\S/;S.mix(S,{isWindow:function(o){return S.type(o)==='object'&&'setInterval'in o&&'document'in o&&o.document.nodeType==9;},parseXML:function(data){if(data.documentElement){return data;} var xml;try{if(win['DOMParser']){xml=new DOMParser().parseFromString(data,'text/xml');}else{xml=new ActiveXObject('Microsoft.XMLDOM');xml.async='false';xml.loadXML(data);}}catch(e){S.log('parseXML error : ');S.log(e);xml=undefined;} if(!xml||!xml.documentElement||xml.getElementsByTagName('parsererror').length){S.error('Invalid XML: '+data);} return xml;},globalEval:function(data){if(data&&RE_NOT_WHITE.test(data)){(win.execScript||function(data){win['eval'].call(win,data);})(data);}},ready:function(fn){readyPromise.then(fn);return this;},available:function(id,fn){id=(id+EMPTY).match(RE_IDSTR)[1];if(!id||!S.isFunction(fn)){return;} var retryCount=1,node,timer=S.later(function(){if((node=doc.getElementById(id))&&(fn(node)||1)||++retryCount>POLL_RETIRES){timer.cancel();}},POLL_INTERVAL,true);}});function _bindReady(){var doScroll=docElem.doScroll,eventType=doScroll?'onreadystatechange':'DOMContentLoaded',COMPLETE='complete',fire=function(){readyDefer.resolve(S)};if(doc.readyState===COMPLETE){return fire();} if(doc.addEventListener){function domReady(){doc.removeEventListener(eventType,domReady,false);fire();} doc.addEventListener(eventType,domReady,false);win.addEventListener('load',fire,false);} else{function stateChange(){if(doc.readyState===COMPLETE){doc.detachEvent(eventType,stateChange);fire();}} doc.attachEvent(eventType,stateChange);win.attachEvent('onload',fire);var notframe;try{notframe=(win['frameElement']===null);}catch(e){S.log('get frameElement error : ');S.log(e);notframe=false;} if(doScroll&¬frame){function readyScroll(){try{doScroll('left');fire();}catch(ex){setTimeout(readyScroll,POLL_INTERVAL);}} readyScroll();}} return 0;} if(location&&(location.search||EMPTY).indexOf('ks-debug')!==-1){S.Config.debug=true;} _bindReady();if(navigator&&navigator.userAgent.match(/MSIE/)){try{doc.execCommand('BackgroundImageCache',false,true);}catch(e){}}})(KISSY,undefined);(function(S){S.config({packages:{gallery:{base:S.Config.baseUri.resolve('../').toString()}},modules:{core:{alias:['dom','event','ajax','anim','base','node','json']}}});})(KISSY);KISSY.config('modules',{'flash':{requires:['ua','dom','json']},'combobox':{requires:['component','node','input-selection','menu','ajax']},'anim':{requires:['dom','event','ua']},'toolbar':{requires:['component','node']},'dom':{requires:['ua']},'menubutton':{requires:['menu','node','button','component']},'waterfall':{requires:['node','base']},'dd':{requires:['ua','dom','event','node','base']},'switchable':{requires:['dom','anim','event']},'tree':{requires:['node','component','event']},'button':{requires:['component','event']},'component':{requires:['ua','node','event','dom','base']},'json':{requires:['ua']},'event':{requires:['ua','dom']},'ajax':{requires:['json','event','dom']},'resizable':{requires:['node','base','dd']},'stylesheet':{requires:['dom']},'input-selection':{requires:['dom']},'datalazyload':{requires:['dom','event','base']},'calendar':{requires:['node','ua','event']},'validation':{requires:['dom','event','node']},'imagezoom':{requires:['node','overlay']},'menu':{requires:['event','component','node','ua']},'suggest':{requires:['dom','event','ua']},'node':{requires:['event','dom','anim']},'editor':{requires:['htmlparser','component','core']},'split-button':{requires:['component','button','menubutton']},'mvc':{requires:['base','event','node','ajax','json']},'overlay':{requires:['ua','component','node']},'base':{requires:['event']},'separator':{requires:['component']},'tabs':{requires:['button','component','toolbar']}});KISSY.add('ua/base',function(S,undefined){var win=S.Env.host,navigator=win.navigator,ua=navigator.userAgent,EMPTY='',MOBILE='mobile',core=EMPTY,shell=EMPTY,m,IE_DETECT_RANGE=[6,9],v,end,VERSION_PLACEHOLDER='{{version}}',IE_DETECT_TPL='',div=win.document.createElement('div'),s,UA={webkit:undefined,trident:undefined,gecko:undefined,presto:undefined,chrome:undefined,safari:undefined,firefox:undefined,ie:undefined,opera:undefined,mobile:undefined,core:undefined,shell:undefined},numberify=function(s){var c=0;return parseFloat(s.replace(/\./g,function(){return(c++===0)?'.':'';}));};div.innerHTML=IE_DETECT_TPL.replace(VERSION_PLACEHOLDER,'');s=div.getElementsByTagName('s');if(s.length>0){shell='ie';UA[core='trident']=0.1;if((m=ua.match(/Trident\/([\d.]*)/))&&m[1]){UA[core]=numberify(m[1]);} for(v=IE_DETECT_RANGE[0],end=IE_DETECT_RANGE[1];v<=end;v++){div.innerHTML=IE_DETECT_TPL.replace(VERSION_PLACEHOLDER,v);if(s.length>0){UA[shell]=v;break;}}}else{if((m=ua.match(/AppleWebKit\/([\d.]*)/))&&m[1]){UA[core='webkit']=numberify(m[1]);if((m=ua.match(/Chrome\/([\d.]*)/))&&m[1]){UA[shell='chrome']=numberify(m[1]);} else if((m=ua.match(/\/([\d.]*) Safari/))&&m[1]){UA[shell='safari']=numberify(m[1]);} if(/ Mobile\//.test(ua)){UA[MOBILE]='apple';} else if((m=ua.match(/NokiaN[^\/]*|Android \d\.\d|webOS\/\d\.\d/))){UA[MOBILE]=m[0].toLowerCase();}} else{if((m=ua.match(/Presto\/([\d.]*)/))&&m[1]){UA[core='presto']=numberify(m[1]);if((m=ua.match(/Opera\/([\d.]*)/))&&m[1]){UA[shell='opera']=numberify(m[1]);if((m=ua.match(/Opera\/.* Version\/([\d.]*)/))&&m[1]){UA[shell]=numberify(m[1]);} if((m=ua.match(/Opera Mini[^;]*/))&&m){UA[MOBILE]=m[0].toLowerCase();} else if((m=ua.match(/Opera Mobi[^;]*/))&&m){UA[MOBILE]=m[0];}}}else{if((m=ua.match(/MSIE\s([^;]*)/))&&m[1]){UA[core='trident']=0.1;UA[shell='ie']=numberify(m[1]);if((m=ua.match(/Trident\/([\d.]*)/))&&m[1]){UA[core]=numberify(m[1]);}}else{if((m=ua.match(/Gecko/))){UA[core='gecko']=0.1;if((m=ua.match(/rv:([\d.]*)/))&&m[1]){UA[core]=numberify(m[1]);} if((m=ua.match(/Firefox\/([\d.]*)/))&&m[1]){UA[shell='firefox']=numberify(m[1]);}}}}}} UA.core=core;UA.shell=shell;UA._numberify=numberify;return UA;});KISSY.add('ua/css',function(S,UA){var o=['webkit','trident','gecko','presto','chrome','safari','firefox','ie','opera'],documentElement=S.Env.host.document.documentElement,className='',v;S.each(o,function(key){if(v=UA[key]){className+=' ks-'+key+(parseInt(v)+'');className+=' ks-'+key;}});documentElement.className=S.trim(documentElement.className+className);},{requires:['./base']});KISSY.add('ua/extra',function(S,UA,undefined){var win=S.Env.host,navigator=win.navigator,ua=navigator.userAgent,m,external,shell,o={se360:undefined,maxthon:undefined,tt:undefined,theworld:undefined,sougou:undefined},numberify=UA._numberify;if(m=ua.match(/360SE/)){o[shell='se360']=3;} else if((m=ua.match(/Maxthon/))&&(external=win.external)){shell='maxthon';try{o[shell]=numberify(external['max_version']);}catch(ex){o[shell]=0.1;}} else if(m=ua.match(/TencentTraveler\s([\d.]*)/)){o[shell='tt']=m[1]?numberify(m[1]):0.1;} else if(m=ua.match(/TheWorld/)){o[shell='theworld']=3;} else if(m=ua.match(/SE\s([\d.]*)/)){o[shell='sougou']=m[1]?numberify(m[1]):0.1;} shell&&(o.shell=shell);S.mix(UA,o);return UA;},{requires:['ua/base']});KISSY.add('ua',function(S,UA){S.UA=UA;return UA;},{requires:['ua/extra','ua/css']});KISSY.add('dom/attr',function(S,DOM,UA,undefined){var doc=S.Env.host.document,NodeType=DOM.NodeType,docElement=doc.documentElement,IE_VERSION=UA.ie&&(doc.documentMode||UA.ie),TEXT=docElement.textContent===undefined?'innerText':'textContent',EMPTY='',HREF='href',nodeName=DOM.nodeName,R_BOOLEAN=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,R_FOCUSABLE=/^(?:button|input|object|select|textarea)$/i,R_CLICKABLE=/^a(?:rea)?$/i,R_INVALID_CHAR=/:|^on/,R_RETURN=/\r/g,attrFix={},attrFn={val:1,css:1,html:1,text:1,data:1,width:1,height:1,offset:1,scrollTop:1,scrollLeft:1},attrHooks={tabindex:{get:function(el){var attributeNode=el.getAttributeNode('tabindex');return attributeNode&&attributeNode.specified?parseInt(attributeNode.value,10):R_FOCUSABLE.test(el.nodeName)||R_CLICKABLE.test(el.nodeName)&&el.href?0:undefined;}},style:{get:function(el){return el.style.cssText;},set:function(el,val){el.style.cssText=val;}}},propFix={'hidefocus':'hideFocus',tabindex:'tabIndex',readonly:'readOnly','for':'htmlFor','class':'className',maxlength:'maxLength','cellspacing':'cellSpacing','cellpadding':'cellPadding',rowspan:'rowSpan',colspan:'colSpan',usemap:'useMap','frameborder':'frameBorder','contenteditable':'contentEditable'},boolHook={get:function(elem,name){return DOM.prop(elem,name)?name.toLowerCase():undefined;},set:function(elem,value,name){var propName;if(value===false){DOM.removeAttr(elem,name);}else{propName=propFix[name]||name;if(propName in elem){elem[propName]=true;} elem.setAttribute(name,name.toLowerCase());} return name;}},propHooks={},attrNodeHook={},valHooks={option:{get:function(elem){var val=elem.attributes.value;return!val||val.specified?elem.value:elem.text;}},select:{get:function(elem){var index=elem.selectedIndex,options=elem.options,one=elem.type==='select-one';if(index<0){return null;}else if(one){return DOM.val(options[index]);} var ret=[],i=0,len=options.length;for(;i0;for(len=len-1;len>=0;len--){if(childNodes[len].nodeType!=NodeType.TEXT_NODE){allText=0;}} if(allText){b=el.ownerDocument.createElement('b');b.style.display='none';el.appendChild(b);} el.setAttribute(name,EMPTY+val);if(b){el.removeChild(b);}};} S.each(['radio','checkbox'],function(r){valHooks[r]={get:function(elem){return elem.getAttribute('value')===null?'on':elem.value;},set:function(elem,value){if(S.isArray(value)){return elem.checked=S.inArray(DOM.val(elem),value);}}};});function getProp(elem,name){name=propFix[name]||name;var hook=propHooks[name];if(hook&&hook.get){return hook.get(elem,name);}else{return elem[name];}} S.mix(DOM,{prop:function(selector,name,value){var elems=DOM.query(selector);if(S.isPlainObject(name)){S.each(name,function(v,k){DOM.prop(elems,k,v);});return undefined;} name=propFix[name]||name;var hook=propHooks[name];if(value!==undefined){for(var i=elems.length-1;i>=0;i--){var elem=elems[i];if(hook&&hook.set){hook.set(elem,value,name);}else{elem[name]=value;}}}else{if(elems.length){return getProp(elems[0],name);}} return undefined;},hasProp:function(selector,name){var elems=DOM.query(selector);for(var i=0;i=0;i--){var el=elems[i];try{el[name]=undefined;delete el[name];}catch(e){}}},attr:function(selector,name,val,pass){var els=DOM.query(selector);if(S.isPlainObject(name)){pass=val;for(var k in name){if(name.hasOwnProperty(k)){DOM.attr(els,k,name[k],pass);}} return undefined;} if(!(name=S.trim(name))){return undefined;} if(pass&&attrFn[name]){return DOM[name](selector,val);} name=name.toLowerCase();if(pass&&attrFn[name]){return DOM[name](selector,val);} name=attrFix[name]||name;var attrNormalizer,el=els[0],ret;if(R_BOOLEAN.test(name)){attrNormalizer=boolHook;} else if(R_INVALID_CHAR.test(name)){attrNormalizer=attrNodeHook;}else{attrNormalizer=attrHooks[name];} if(val===undefined){if(el&&el.nodeType===NodeType.ELEMENT_NODE){if(nodeName(el)=='form'){attrNormalizer=attrNodeHook;} if(attrNormalizer&&attrNormalizer.get){return attrNormalizer.get(el,name);} ret=el.getAttribute(name);return ret===null?undefined:ret;}}else{for(var i=els.length-1;i>=0;i--){el=els[i];if(el&&el.nodeType===NodeType.ELEMENT_NODE){if(nodeName(el)=='form'){attrNormalizer=attrNodeHook;} if(attrNormalizer&&attrNormalizer.set){attrNormalizer.set(el,val,name);}else{el.setAttribute(name,EMPTY+val);}}}} return undefined;},removeAttr:function(selector,name){name=name.toLowerCase();name=attrFix[name]||name;var els=DOM.query(selector),el,i;for(i=els.length-1;i>=0;i--){el=els[i];if(el.nodeType==NodeType.ELEMENT_NODE){var propName;el.removeAttribute(name);if(R_BOOLEAN.test(name)&&(propName=propFix[name]||name)in el){el[propName]=false;}}}},hasAttr:!docElement.hasAttribute?function(selector,name){name=name.toLowerCase();var elems=DOM.query(selector);for(var i=0;i=0;i--){elem=els[i];if(elem.nodeType!==1){return undefined;} var val=value;if(val==null){val='';}else if(typeof val==='number'){val+='';}else if(S.isArray(val)){val=S.map(val,function(value){return value==null?'':value+'';});} hook=valHooks[nodeName(elem)]||valHooks[elem.type];if(!hook||!('set'in hook)||hook.set(elem,val,'value')===undefined){elem.value=val;}} return undefined;},_propHooks:propHooks,text:function(selector,val){if(val===undefined){var el=DOM.get(selector);if(el.nodeType==NodeType.ELEMENT_NODE){return el[TEXT]||EMPTY;} else if(el.nodeType==NodeType.TEXT_NODE){return el.nodeValue;} return undefined;} else{var els=DOM.query(selector),i;for(i=els.length-1;i>=0;i--){el=els[i];if(el.nodeType==NodeType.ELEMENT_NODE){el[TEXT]=val;} else if(el.nodeType==NodeType.TEXT_NODE){el.nodeValue=val;}}} return undefined;}});return DOM;},{requires:['./base','ua']});KISSY.add('dom/base',function(S,UA,undefined){var WINDOW=S.Env.host;var NodeType={ELEMENT_NODE:1,'ATTRIBUTE_NODE':2,TEXT_NODE:3,'CDATA_SECTION_NODE':4,'ENTITY_REFERENCE_NODE':5,'ENTITY_NODE':6,'PROCESSING_INSTRUCTION_NODE':7,COMMENT_NODE:8,DOCUMENT_NODE:9,'DOCUMENT_TYPE_NODE':10,DOCUMENT_FRAGMENT_NODE:11,'NOTATION_NODE':12};var DOM={isCustomDomain:function(win){win=win||WINDOW;var domain=win.document.domain,hostname=win.location.hostname;return domain!=hostname&&domain!=('['+hostname+']');},getEmptyIframeSrc:function(win){win=win||WINDOW;if(UA['ie']&&DOM.isCustomDomain(win)){return'javascript:void(function(){'+encodeURIComponent('document.open();'+"document.domain='"+ win.document.domain +"';"+'document.close();')+'}())';} return undefined;},NodeType:NodeType,_getWin:function(elem){if(elem==null){return WINDOW;} return('scrollTo'in elem&&elem['document'])?elem:elem.nodeType==NodeType.DOCUMENT_NODE?elem.defaultView||elem.parentWindow:false;},_isNodeList:function(o){return o&&!o.nodeType&&o.item&&!o.setTimeout;},nodeName:function(selector){var el=DOM.get(selector),nodeName=el.nodeName.toLowerCase();if(UA['ie']){var scopeName=el['scopeName'];if(scopeName&&scopeName!='HTML'){nodeName=scopeName.toLowerCase()+':'+nodeName;}} return nodeName;}};S.mix(DOM,NodeType);return DOM;},{requires:['ua']});KISSY.add('dom/class',function(S,DOM,undefined){var SPACE=' ',NodeType=DOM.NodeType,REG_SPLIT=/[\.\s]\s*\.?/,REG_CLASS=/[\n\t]/g;function norm(elemClass){return(SPACE+elemClass+SPACE).replace(REG_CLASS,SPACE);} S.mix(DOM,{hasClass:function(selector,className){return batch(selector,className,function(elem,classNames,cl){var elemClass=elem.className;if(elemClass){var className=norm(elemClass),j=0,ret=true;for(;j=0){className=className.replace(needle,SPACE);}} elem.className=S.trim(className);}}},undefined);},replaceClass:function(selector,oldClassName,newClassName){DOM.removeClass(selector,oldClassName);DOM.addClass(selector,newClassName);},toggleClass:function(selector,className,state){var isBool=S.isBoolean(state),has;batch(selector,className,function(elem,classNames,cl){var j=0,className;for(;j]*)\/>/ig,RE_TAG=/<([\w:]+)/,R_TBODY=/(?:<\/\1>)?$/;function getElementsByTagName(el,tag){return el.getElementsByTagName(tag);} function cleanData(els){var Event=S.require('event');if(Event){Event.detach(els);} DOM.removeData(els);} S.mix(DOM,{create:function(html,props,ownerDoc,_trim){var ret=null;if(!html){return ret;} if(html.nodeType){return DOM.clone(html);} if(!isString(html)){return ret;} if(_trim===undefined){_trim=true;} if(_trim){html=S.trim(html);} var creators=DOM._creators,holder,whitespaceMatch,context=ownerDoc||doc,m,tag=DIV,k,nodes;if(!R_HTML.test(html)){ret=context.createTextNode(html);} else if((m=RE_SIMPLE_TAG.exec(html))){ret=context.createElement(m[1]);} else{html=html.replace(R_XHTML_TAG,'<$1><'+'/$2>');if((m=RE_TAG.exec(html))&&(k=m[1])){tag=k.toLowerCase();} holder=(creators[tag]||creators[DIV])(html,context);if(lostLeadingWhitespace&&(whitespaceMatch=html.match(R_LEADING_WHITESPACE))){holder.insertBefore(context.createTextNode(whitespaceMatch[0]),holder.firstChild);} nodes=holder.childNodes;if(nodes.length===1){ret=nodes[0][PARENT_NODE].removeChild(nodes[0]);} else if(nodes.length){ret=nodeListToFragment(nodes);}else{S.error(html+' : create node error');}} return attachProps(ret,props);},_creators:{div:function(html,ownerDoc){var frag=ownerDoc&&ownerDoc!=doc?ownerDoc.createElement(DIV):DEFAULT_DIV;frag['innerHTML']='m
'+html+'<'+'/div>';return frag.lastChild;}},html:function(selector,htmlString,loadScripts,callback){var els=DOM.query(selector),el=els[0];if(!el){return} if(htmlString===undefined){if(el.nodeType==NodeType.ELEMENT_NODE){return el.innerHTML;}else{return null;}} else{var success=false,i,elem;htmlString+='';if(!htmlString.match(/<(?:script|style|link)/i)&&(!lostLeadingWhitespace||!htmlString.match(R_LEADING_WHITESPACE))&&!creatorsMap[(htmlString.match(RE_TAG)||['',''])[1].toLowerCase()]){try{for(i=els.length-1;i>=0;i--){elem=els[i];if(elem.nodeType==NodeType.ELEMENT_NODE){cleanData(getElementsByTagName(elem,'*'));elem.innerHTML=htmlString;}} success=true;}catch(e){}} if(!success){var valNode=DOM.create(htmlString,0,el.ownerDocument,0);DOM.empty(els);DOM.append(valNode,els,loadScripts);} callback&&callback();}},outerHTML:function(selector,htmlString,loadScripts){var els=DOM.query(selector),holder,i,valNode,length=els.length,el=els[0];if(!el){return} if(htmlString===undefined){if(supportOuterHTML){return el.outerHTML}else{holder=el.ownerDocument.createElement('div');holder.appendChild(DOM.clone(el,true));return holder.innerHTML;}}else{htmlString+='';if(!htmlString.match(/<(?:script|style|link)/i)&&supportOuterHTML){for(i=length-1;i>=0;i--){el=els[i];if(el.nodeType==NodeType.ELEMENT_NODE){cleanData(el);cleanData(getElementsByTagName(el,'*'));el.outerHTML=htmlString;}}}else{valNode=DOM.create(htmlString,0,el.ownerDocument,0);DOM.insertBefore(valNode,els,loadScripts);DOM.remove(els);}}},remove:function(selector,keepData){var el,els=DOM.query(selector),i;for(i=els.length-1;i>=0;i--){el=els[i];if(!keepData&&el.nodeType==NodeType.ELEMENT_NODE){var elChildren=getElementsByTagName(el,'*');cleanData(elChildren);cleanData(el);} if(el.parentNode){el.parentNode.removeChild(el);}}},clone:function(selector,deep,withDataAndEvent,deepWithDataAndEvent){if(typeof deep==='object'){deepWithDataAndEvent=deep['deepWithDataAndEvent'];withDataAndEvent=deep['withDataAndEvent'];deep=deep['deep'];} var elem=DOM.get(selector);if(!elem){return null;} var clone=elem.cloneNode(deep);if(elem.nodeType==NodeType.ELEMENT_NODE||elem.nodeType==NodeType.DOCUMENT_FRAGMENT_NODE){if(elem.nodeType==NodeType.ELEMENT_NODE){fixAttributes(elem,clone);} if(deep){processAll(fixAttributes,elem,clone);}} if(withDataAndEvent){cloneWithDataAndEvent(elem,clone);if(deep&&deepWithDataAndEvent){processAll(cloneWithDataAndEvent,elem,clone);}} return clone;},empty:function(selector){var els=DOM.query(selector),el,i;for(i=els.length-1;i>=0;i--){el=els[i];DOM.remove(el.childNodes);}},nodeListToFragment:nodeListToFragment});function processAll(fn,elem,clone){if(elem.nodeType==NodeType.DOCUMENT_FRAGMENT_NODE){var eCs=elem.childNodes,cloneCs=clone.childNodes,fIndex=0;while(eCs[fIndex]){if(cloneCs[fIndex]){processAll(fn,eCs[fIndex],cloneCs[fIndex]);} fIndex++;}}else if(elem.nodeType==NodeType.ELEMENT_NODE){var elemChildren=getElementsByTagName(elem,'*'),cloneChildren=getElementsByTagName(clone,'*'),cIndex=0;while(elemChildren[cIndex]){if(cloneChildren[cIndex]){fn(elemChildren[cIndex],cloneChildren[cIndex]);} cIndex++;}}} function cloneWithDataAndEvent(src,dest){var Event=S.require('event');if(dest.nodeType==NodeType.ELEMENT_NODE&&!DOM.hasData(src)){return;} var srcData=DOM.data(src);for(var d in srcData){DOM.data(dest,d,srcData[d]);} if(Event){Event._removeData(dest);Event._clone(src,dest);}} function fixAttributes(src,dest){if(dest.clearAttributes){dest.clearAttributes();} if(dest.mergeAttributes){dest.mergeAttributes(src);} var nodeName=dest.nodeName.toLowerCase(),srcChilds=src.childNodes;if(nodeName==='object'&&!dest.childNodes.length){for(var i=0;i'+html+'<'+'/'+tag+'>',null,ownerDoc);};})(creatorsMap[p]);} if(ie<8){creators.table=function(html,ownerDoc){var frag=creators[DIV](html,ownerDoc),hasTBody=R_TBODY.test(html);if(hasTBody){return frag;} var table=frag.firstChild,tableChildren=S.makeArray(table.childNodes);S.each(tableChildren,function(c){if(DOM.nodeName(c)=='tbody'&&!c.childNodes.length){table.removeChild(c);}});return frag;};} return DOM;},{requires:['./base','ua']});KISSY.add('dom/data',function(S,DOM,undefined){var win=S.Env.host,EXPANDO='__ks_data_'+S.now(),dataCache={},winDataCache={};var noData={};noData['applet']=1;noData['object']=1;noData['embed']=1;var commonOps={hasData:function(cache,name){if(cache){if(name!==undefined){if(name in cache){return true;}}else if(!S.isEmptyObject(cache)){return true;}} return false;}};var objectOps={hasData:function(ob,name){if(ob==win){return objectOps.hasData(winDataCache,name);} var thisCache=ob[EXPANDO];return commonOps.hasData(thisCache,name);},data:function(ob,name,value){if(ob==win){return objectOps.data(winDataCache,name,value);} var cache=ob[EXPANDO];if(value!==undefined){cache=ob[EXPANDO]=ob[EXPANDO]||{};cache[name]=value;}else{if(name!==undefined){return cache&&cache[name];}else{cache=ob[EXPANDO]=ob[EXPANDO]||{};return cache;}}},removeData:function(ob,name){if(ob==win){return objectOps.removeData(winDataCache,name);} var cache=ob[EXPANDO];if(name!==undefined){delete cache[name];if(S.isEmptyObject(cache)){objectOps.removeData(ob);}}else{try{delete ob[EXPANDO];}catch(e){ob[EXPANDO]=undefined;}}}};var domOps={hasData:function(elem,name){var key=elem[EXPANDO];if(!key){return false;} var thisCache=dataCache[key];return commonOps.hasData(thisCache,name);},data:function(elem,name,value){if(noData[elem.nodeName.toLowerCase()]){return undefined;} var key=elem[EXPANDO],cache;if(!key){if(name!==undefined&&value===undefined){return undefined;} key=elem[EXPANDO]=S.guid();} cache=dataCache[key];if(value!==undefined){cache=dataCache[key]=dataCache[key]||{};cache[name]=value;}else{if(name!==undefined){return cache&&cache[name];}else{cache=dataCache[key]=dataCache[key]||{};return cache;}}},removeData:function(elem,name){var key=elem[EXPANDO],cache;if(!key){return;} cache=dataCache[key];if(name!==undefined){delete cache[name];if(S.isEmptyObject(cache)){domOps.removeData(elem);}}else{delete dataCache[key];try{delete elem[EXPANDO];}catch(e){elem[EXPANDO]=undefined;} if(elem.removeAttribute){elem.removeAttribute(EXPANDO);}}}};S.mix(DOM,{__EXPANDO:EXPANDO,hasData:function(selector,name){var ret=false,elems=DOM.query(selector);for(var i=0;i=0;i--){elem=elems[i];if(elem.nodeType){domOps.data(elem,name,data);}else{objectOps.data(elem,name,data);}}} return undefined;},removeData:function(selector,name){var els=DOM.query(selector),elem,i;for(i=els.length-1;i>=0;i--){elem=els[i];if(elem.nodeType){domOps.removeData(elem,name);}else{objectOps.removeData(elem,name);}}}});return DOM;},{requires:['./base']});KISSY.add('dom',function(S,DOM){S.mix(S,{DOM:DOM,get:DOM.get,query:DOM.query});return DOM;},{requires:['dom/attr','dom/class','dom/create','dom/data','dom/insertion','dom/offset','dom/style','dom/selector','dom/style-ie','dom/traversal']});KISSY.add('dom/insertion',function(S,UA,DOM){var PARENT_NODE='parentNode',NodeType=DOM.NodeType,R_FORM_EL=/^(?:button|input|object|select|textarea)$/i,getNodeName=DOM.nodeName,makeArray=S.makeArray,splice=[].splice,NEXT_SIBLING='nextSibling';function fixChecked(ret){for(var i=0;i1){clonedNode=DOM.clone(newNode,true);refNodes=S.makeArray(refNodes)} for(var i=0;i0?DOM.clone(clonedNode,true):newNode;fn(node,refNode);} if(scripts&&scripts.length){S.each(scripts,evalScript);}}} S.mix(DOM,{insertBefore:function(newNodes,refNodes,loadScripts){insertion(newNodes,refNodes,function(newNode,refNode){if(refNode[PARENT_NODE]){refNode[PARENT_NODE].insertBefore(newNode,refNode);}},loadScripts);},insertAfter:function(newNodes,refNodes,loadScripts){insertion(newNodes,refNodes,function(newNode,refNode){if(refNode[PARENT_NODE]){refNode[PARENT_NODE].insertBefore(newNode,refNode[NEXT_SIBLING]);}},loadScripts);},appendTo:function(newNodes,parents,loadScripts){insertion(newNodes,parents,function(newNode,parent){parent.appendChild(newNode);},loadScripts);},prependTo:function(newNodes,parents,loadScripts){insertion(newNodes,parents,function(newNode,parent){parent.insertBefore(newNode,parent.firstChild);},loadScripts);},wrapAll:function(wrappedNodes,wrapperNode){wrapperNode=DOM.clone(DOM.get(wrapperNode),true);wrappedNodes=DOM.query(wrappedNodes);if(wrappedNodes[0].parentNode){DOM.insertBefore(wrapperNode,wrappedNodes[0]);} var c;while((c=wrapperNode.firstChild)&&c.nodeType==1){wrapperNode=c;} DOM.appendTo(wrappedNodes,wrapperNode);},wrap:function(wrappedNodes,wrapperNode){wrappedNodes=DOM.query(wrappedNodes);wrapperNode=DOM.get(wrapperNode);S.each(wrappedNodes,function(w){DOM.wrapAll(w,wrapperNode);});},wrapInner:function(wrappedNodes,wrapperNode){wrappedNodes=DOM.query(wrappedNodes);wrapperNode=DOM.get(wrapperNode);S.each(wrappedNodes,function(w){var contents=w.childNodes;if(contents.length){DOM.wrapAll(contents,wrapperNode);}else{w.appendChild(wrapperNode);}});},unwrap:function(wrappedNodes){wrappedNodes=DOM.query(wrappedNodes);S.each(wrappedNodes,function(w){var p=w.parentNode;DOM.replaceWith(p,p.childNodes);});},replaceWith:function(selector,newNodes){var nodes=DOM.query(selector);newNodes=DOM.query(newNodes);DOM.remove(newNodes,true);DOM.insertBefore(newNodes,nodes);DOM.remove(nodes);}});S.each({'prepend':'prependTo','append':'appendTo','before':'insertBefore','after':'insertAfter'},function(value,key){DOM[key]=DOM[value];});return DOM;},{requires:['ua','./create']});KISSY.add('dom/offset',function(S,DOM,UA,undefined){var win=S.Env.host,doc=win.document,NodeType=DOM.NodeType,docElem=doc.documentElement,getWin=DOM._getWin,CSS1Compat='CSS1Compat',compatMode='compatMode',MAX=Math.max,myParseInt=parseInt,POSITION='position',RELATIVE='relative',DOCUMENT='document',BODY='body',DOC_ELEMENT='documentElement',OWNER_DOCUMENT='ownerDocument',VIEWPORT='viewport',SCROLL='scroll',CLIENT='client',LEFT='left',TOP='top',isNumber=S.isNumber,SCROLL_LEFT=SCROLL+'Left',SCROLL_TOP=SCROLL+'Top';S.mix(DOM,{offset:function(selector,coordinates,relativeWin){if(coordinates===undefined){var elem=DOM.get(selector),ret;if(elem){ret=getOffset(elem,relativeWin);} return ret;} var els=DOM.query(selector),i;for(i=els.length-1;i>=0;i--){elem=els[i];setOffset(elem,coordinates);} return undefined;},scrollIntoView:function(selector,container,top,hscroll,auto){var elem;if(!(elem=DOM.get(selector))){return;} if(container){container=DOM.get(container);} if(!container){container=elem.ownerDocument;} if(auto!==true){hscroll=hscroll===undefined?true:!!hscroll;top=top===undefined?true:!!top;} if(container.nodeType==NodeType.DOCUMENT_NODE){container=getWin(container);} var isWin=!!getWin(container),elemOffset=DOM.offset(elem),eh=DOM.outerHeight(elem),ew=DOM.outerWidth(elem),containerOffset,ch,cw,containerScroll,diffTop,diffBottom,win,winScroll,ww,wh;if(isWin){win=container;wh=DOM.height(win);ww=DOM.width(win);winScroll={left:DOM.scrollLeft(win),top:DOM.scrollTop(win)};diffTop={left:elemOffset[LEFT]-winScroll[LEFT],top:elemOffset[TOP]-winScroll[TOP]};diffBottom={left:elemOffset[LEFT]+ew-(winScroll[LEFT]+ww),top:elemOffset[TOP]+eh-(winScroll[TOP]+wh)};containerScroll=winScroll;} else{containerOffset=DOM.offset(container);ch=container.clientHeight;cw=container.clientWidth;containerScroll={left:DOM.scrollLeft(container),top:DOM.scrollTop(container)};diffTop={left:elemOffset[LEFT]-containerOffset[LEFT]- (myParseInt(DOM.css(container,'borderLeftWidth'))||0),top:elemOffset[TOP]-containerOffset[TOP]- (myParseInt(DOM.css(container,'borderTopWidth'))||0)};diffBottom={left:elemOffset[LEFT]+ew- (containerOffset[LEFT]+cw+ (myParseInt(DOM.css(container,'borderRightWidth'))||0)),top:elemOffset[TOP]+eh- (containerOffset[TOP]+ch+ (myParseInt(DOM.css(container,'borderBottomWidth'))||0))};} if(diffTop.top<0||diffBottom.top>0){if(top===true){DOM.scrollTop(container,containerScroll.top+diffTop.top);}else if(top===false){DOM.scrollTop(container,containerScroll.top+diffBottom.top);}else{if(diffTop.top<0){DOM.scrollTop(container,containerScroll.top+diffTop.top);}else{DOM.scrollTop(container,containerScroll.top+diffBottom.top);}}} if(hscroll){if(diffTop.left<0||diffBottom.left>0){if(top===true){DOM.scrollLeft(container,containerScroll.left+diffTop.left);}else if(top===false){DOM.scrollLeft(container,containerScroll.left+diffBottom.left);}else{if(diffTop.left<0){DOM.scrollLeft(container,containerScroll.left+diffTop.left);}else{DOM.scrollLeft(container,containerScroll.left+diffBottom.left);}}}}},docWidth:0,docHeight:0,viewportHeight:0,viewportWidth:0,scrollTop:0,scrollLeft:0});S.each(['Left','Top'],function(name,i){var method=SCROLL+name;DOM[method]=function(elem,v){if(isNumber(elem)){return arguments.callee(win,elem);} elem=DOM.get(elem);var ret,w=getWin(elem),d;if(w){if(v!==undefined){v=parseFloat(v);var left=name=='Left'?v:DOM.scrollLeft(w),top=name=='Top'?v:DOM.scrollTop(w);w['scrollTo'](left,top);}else{ret=w['page'+(i?'Y':'X')+'Offset'];if(!isNumber(ret)){d=w[DOCUMENT];ret=d[DOC_ELEMENT][method];if(!isNumber(ret)){ret=d[BODY][method];}}}}else if(elem.nodeType==NodeType.ELEMENT_NODE){if(v!==undefined){elem[method]=parseFloat(v)}else{ret=elem[method];}} return ret;}});S.each(['Width','Height'],function(name){DOM['doc'+name]=function(refWin){refWin=DOM.get(refWin);var w=getWin(refWin),d=w[DOCUMENT];return MAX(d[DOC_ELEMENT][SCROLL+name],d[BODY][SCROLL+name],DOM[VIEWPORT+name](d));};DOM[VIEWPORT+name]=function(refWin){refWin=DOM.get(refWin);var prop=CLIENT+name,win=getWin(refWin),doc=win[DOCUMENT],body=doc[BODY],documentElement=doc[DOC_ELEMENT],documentElementProp=documentElement[prop];return doc[compatMode]===CSS1Compat&&documentElementProp||body&&body[prop]||documentElementProp;}});function getClientPosition(elem){var box,x,y,doc=elem.ownerDocument,body=doc.body;box=elem.getBoundingClientRect();x=box[LEFT];y=box[TOP];x-=docElem.clientLeft||body.clientLeft||0;y-=docElem.clientTop||body.clientTop||0;return{left:x,top:y};} function getPageOffset(el){var pos=getClientPosition(el);var w=getWin(el[OWNER_DOCUMENT]);pos.left+=DOM[SCROLL_LEFT](w);pos.top+=DOM[SCROLL_TOP](w);return pos;} function getOffset(el,relativeWin){var position={left:0,top:0};var currentWin=getWin(el[OWNER_DOCUMENT]);var currentEl=el;relativeWin=relativeWin||currentWin;do{var offset=currentWin==relativeWin?getPageOffset(currentEl):getClientPosition(currentEl);position.left+=offset.left;position.top+=offset.top;}while(currentWin&¤tWin!=relativeWin&&(currentEl=currentWin['frameElement'])&&(currentWin=currentWin.parent));return position;} function setOffset(elem,offset){if(DOM.css(elem,POSITION)==='static'){elem.style[POSITION]=RELATIVE;} var old=getOffset(elem),ret={},current,key;for(key in offset){if(offset.hasOwnProperty(key)){current=myParseInt(DOM.css(elem,key),10)||0;ret[key]=current+offset[key]-old[key];}} DOM.css(elem,ret);} return DOM;},{requires:['./base','ua']});KISSY.add('dom/selector',function(S,DOM,undefined){var doc=S.Env.host.document,NodeType=DOM.NodeType,filter=S.filter,require=function(selector){return S.require(selector);},isArray=S.isArray,isString=S.isString,makeArray=S.makeArray,isNodeList=DOM._isNodeList,getNodeName=DOM.nodeName,push=Array.prototype.push,SPACE=' ',COMMA=',',trim=S.trim,ANY='*',REG_ID=/^#[\w-]+$/,REG_QUERY=/^(?:#([\w-]+))?\s*([\w-]+|\*)?\.?([\w-]+)?$/;function query_each(f){var self=this,el,i;for(i=0;i1&&(contexts.length>1||(isSelectorString&&selector.indexOf(COMMA)>-1))){unique(ret);}}} ret.each=query_each;return ret;} function queryByContexts(selector,context){var ret=[],isSelectorString=isString(selector);if(isSelectorString&&selector.match(REG_QUERY)||!isSelectorString){ret=queryBySimple(selector,context);} else if(isSelectorString&&selector.indexOf(COMMA)>-1){ret=queryBySelectors(selector,context);} else{ret=queryBySizzle(selector,context);} return ret;} function queryBySizzle(selector,context){var ret=[],sizzle=require('sizzle');if(sizzle){sizzle(selector,context,ret);}else{error(selector);} return ret;} function queryBySelectors(selector,context){var ret=[],i,selectors=selector.split(/\s*,\s*/);for(i=0;i0){getElementsByTagName=function(tag,context){var ret=makeArray(context.getElementsByTagName(tag));if(tag===ANY){var t=[],i=0,node;while((node=ret[i++])){if(node.nodeType===1){t.push(node);}} ret=t;} return ret;};}})();var getElementsByClassName=doc.getElementsByClassName?function(cls,tag,context){if(!context){return[];} var els=context.getElementsByClassName(cls),ret,i=0,len=els.length,el;if(tag&&tag!==ANY){ret=[];for(;i=1&&S.trim(filter.replace(R_ALPHA,''))===''){style.removeAttribute(FILTER);if(currentStyle&&!currentStyle[FILTER]){return;}} style.filter=R_ALPHA.test(filter)?filter.replace(R_ALPHA,opacity):filter+(filter?', ':'')+opacity;}};}} catch(ex){S.log('IE filters ActiveX is disabled. ex = '+ex);} var IE8=UA['ie']==8,BORDER_MAP={},BORDERS=['','Top','Left','Right','Bottom'];BORDER_MAP['thin']=IE8?'1px':'2px';BORDER_MAP['medium']=IE8?'3px':'4px';BORDER_MAP['thick']=IE8?'5px':'6px';S.each(BORDERS,function(b){var name='border'+b+'Width',styleName='border'+b+'Style';CUSTOM_STYLES[name]={get:function(elem,computed){var currentStyle=computed?elem[CURRENT_STYLE]:0,current=currentStyle&&String(currentStyle[name])||undefined;if(current&¤t.indexOf('px')<0){if(BORDER_MAP[current]&¤tStyle[styleName]!=='none'){current=BORDER_MAP[current];}else{current=0;}} return current;}};});if(!(doc.defaultView||{}).getComputedStyle&&docElem[CURRENT_STYLE]){DOM._getComputedStyle=function(elem,name){name=DOM._cssProps[name]||name;var ret=elem[CURRENT_STYLE]&&elem[CURRENT_STYLE][name];if((!RE_NUM_PX.test(ret)&&RE_NUM.test(ret))&&ret.indexOf(' ')==-1){var style=elem[STYLE],left=style[LEFT],rsLeft=elem[RUNTIME_STYLE]&&elem[RUNTIME_STYLE][LEFT];if(rsLeft){elem[RUNTIME_STYLE][LEFT]=elem[CURRENT_STYLE][LEFT];} style[LEFT]=name==='fontSize'?'1em':(ret||0);ret=style['pixelLeft']+PX;style[LEFT]=left;if(rsLeft){elem[RUNTIME_STYLE][LEFT]=rsLeft;}} return ret===''?'auto':ret;};} return DOM;},{requires:['./base','ua','./style']});KISSY.add('dom/style',function(S,DOM,UA,undefined){var WINDOW=S.Env.host,doc=WINDOW.document,docElem=doc.documentElement,isIE=UA['ie'],STYLE='style',FLOAT='float',CSS_FLOAT='cssFloat',STYLE_FLOAT='styleFloat',WIDTH='width',HEIGHT='height',AUTO='auto',DISPLAY='display',OLD_DISPLAY=DISPLAY+S.now(),NONE='none',myParseInt=parseInt,RE_NUM_PX=/^-?\d+(?:px)?$/i,cssNumber={'fillOpacity':1,'fontWeight':1,'lineHeight':1,'opacity':1,'orphans':1,'widows':1,'zIndex':1,'zoom':1},rmsPrefix=/^-ms-/,RE_DASH=/-([a-z])/ig,CAMEL_CASE_FN=function(all,letter){return letter.toUpperCase();},R_UPPER=/([A-Z]|^ms)/g,EMPTY='',DEFAULT_UNIT='px',CUSTOM_STYLES={},cssProps={},defaultDisplay={};if(docElem[STYLE][CSS_FLOAT]!==undefined){cssProps[FLOAT]=CSS_FLOAT;} else if(docElem[STYLE][STYLE_FLOAT]!==undefined){cssProps[FLOAT]=STYLE_FLOAT;} function camelCase(name){return name.replace(rmsPrefix,'ms-').replace(RE_DASH,CAMEL_CASE_FN);} var defaultDisplayDetectIframe,defaultDisplayDetectIframeDoc;function getDefaultDisplay(tagName){var body,elem;if(!defaultDisplay[tagName]){body=doc.body||doc.documentElement;elem=doc.createElement(tagName);DOM.prepend(elem,body);var oldDisplay=DOM.css(elem,'display');body.removeChild(elem);if(oldDisplay=='none'||oldDisplay==''){if(!defaultDisplayDetectIframe){defaultDisplayDetectIframe=doc.createElement('iframe');defaultDisplayDetectIframe.frameBorder=defaultDisplayDetectIframe.width=defaultDisplayDetectIframe.height=0;DOM.prepend(defaultDisplayDetectIframe,body);var iframeSrc;if(iframeSrc=DOM.getEmptyIframeSrc()){defaultDisplayDetectIframe.src=iframeSrc;}}else{DOM.prepend(defaultDisplayDetectIframe,body);} if(!defaultDisplayDetectIframeDoc||!defaultDisplayDetectIframe.createElement){try{defaultDisplayDetectIframeDoc=defaultDisplayDetectIframe.contentWindow.document;defaultDisplayDetectIframeDoc.write((doc.compatMode==='CSS1Compat'?'':'') +''+ (UA['ie']&&DOM.isCustomDomain()?'":'') +'');defaultDisplayDetectIframeDoc.close();}catch(e){return'block';}} elem=defaultDisplayDetectIframeDoc.createElement(tagName);defaultDisplayDetectIframeDoc.body.appendChild(elem);oldDisplay=DOM.css(elem,'display');body.removeChild(defaultDisplayDetectIframe);} defaultDisplay[tagName]=oldDisplay;} return defaultDisplay[tagName];} S.mix(DOM,{_camelCase:camelCase,_CUSTOM_STYLES:CUSTOM_STYLES,_cssProps:cssProps,_getComputedStyle:function(elem,name){var val='',computedStyle,d=elem.ownerDocument;name=name.replace(R_UPPER,'-$1').toLowerCase();if(computedStyle=d.defaultView.getComputedStyle(elem,null)){val=computedStyle.getPropertyValue(name)||computedStyle[name];} if(val==''&&!DOM.contains(d.documentElement,elem)){name=cssProps[name]||name;val=elem[STYLE][name];} return val;},style:function(selector,name,val){var els=DOM.query(selector),elem=els[0],i;if(S.isPlainObject(name)){for(var k in name){if(name.hasOwnProperty(k)){for(i=els.length-1;i>=0;i--){style(els[i],k,name[k]);}}} return undefined;} if(val===undefined){var ret='';if(elem){ret=style(elem,name,val);} return ret;}else{for(i=els.length-1;i>=0;i--){style(els[i],name,val);}} return undefined;},css:function(selector,name,val){var els=DOM.query(selector),elem=els[0],i;if(S.isPlainObject(name)){for(var k in name){if(name.hasOwnProperty(k)){for(i=els.length-1;i>=0;i--){style(els[i],k,name[k]);}}} return undefined;} name=camelCase(name);var hook=CUSTOM_STYLES[name];if(val===undefined){var ret='';if(elem){if(hook&&'get'in hook&&(ret=hook.get(elem,true))!==undefined){}else{ret=DOM._getComputedStyle(elem,name);}} return ret===undefined?'':ret;} else{for(i=els.length-1;i>=0;i--){style(els[i],name,val);}} return undefined;},show:function(selector){var els=DOM.query(selector),elem,i;for(i=els.length-1;i>=0;i--){elem=els[i];elem[STYLE][DISPLAY]=DOM.data(elem,OLD_DISPLAY)||EMPTY;if(DOM.css(elem,DISPLAY)===NONE){var tagName=elem.tagName.toLowerCase(),old=getDefaultDisplay(tagName);DOM.data(elem,OLD_DISPLAY,old);elem[STYLE][DISPLAY]=old;}}},hide:function(selector){var els=DOM.query(selector),elem,i;for(i=els.length-1;i>=0;i--){elem=els[i];var style=elem[STYLE],old=style[DISPLAY];if(old!==NONE){if(old){DOM.data(elem,OLD_DISPLAY,old);} style[DISPLAY]=NONE;}}},toggle:function(selector){var els=DOM.query(selector),elem,i;for(i=els.length-1;i>=0;i--){elem=els[i];if(DOM.css(elem,DISPLAY)===NONE){DOM.show(elem);}else{DOM.hide(elem);}}},addStyleSheet:function(refWin,cssText,id){refWin=refWin||WINDOW;if(S.isString(refWin)){id=cssText;cssText=refWin;refWin=WINDOW;} refWin=DOM.get(refWin);var win=DOM._getWin(refWin),doc=win.document,elem;if(id&&(id=id.replace('#',EMPTY))){elem=DOM.get('#'+id,doc);} if(elem){return;} elem=DOM.create('