
var Fu=window.Fu={
		//Vv.addLoadEvent(function(){Fu.scrollbar(Vv.G("album-l0"),Vv.G("album-r0"),410,120);});
		scrollbar	: function (l,r,w,h){
			var scroller  = new jsScroller(l,w,h);
			var scrollbar = new jsScrollbar (r, scroller, true, this.scrollbarEvent);
			var scrollTween = new jsScrollerTween (scrollbar, true);
			scrollbar._scrollDist = 20;
			scrollTween.steps = [0,1,3,6,10,15,21,28,36,45,55,64,72,79,85,90,94,97,99,100];
			//补上IE6不支持的Css设置
			Vv.C("Scrollbar-Down","div",r)[0].style.top=h-15+"px";
			Vv.C("Scrollbar-Track","div",r)[0].style.height=h+"px";
		//	return [scroller,scrollbar,scrollTween];
		},
		scrollbarEvent	: function (o,type) {
			if(type == "mousedown") {
				if (Vv.getClassName(o) == "Scrollbar-Track"){o.style.backgroundColor = "#C6C6C6";}//点击时
				else{o.style.backgroundColor = "#ff8000";}
			}else{
				if(Vv.getClassName(o) == "Scrollbar-Track"){o.style.backgroundColor = "#E3E3E3";}
				else{o.style.backgroundColor = "#A7C5EF";}
			}
		},
		//全部选中
		check_all	: function (id,this_){
			var obj=Vv.T("input","",Vv.G(id));
			for(var i=0;i<obj.length;i++){ //>
				obj[i].checked=this_.checked;
			};
			radio_style();//多选框美化
		},
		//播放选中
		play_all	: function(id,S){
			var obj=Vv.T("dd","",Vv.G(id));
			if(!obj.length){obj=Vv.T("li","",Vv.G(id));}
			var playJson,playArray=[],l=0,fireMusic=null;
			for(var i=0;i<obj.length;i++){//>
				var inp=Vv.T("input",0,obj[i]);
				if(inp.checked){
					var m	= Vv.T("a",0,obj[i]);
					var s;
					if(typeof S=="object"){
						s=S;
					}else{
						s=Vv.G(S);
						try{if(!s){s=Vv.T("a",1,obj[i]);}}
						catch(e){Vv.error("忘了歌手数据");return;}
					}
					if(!fireMusic){fireMusic=m;}//得到第一条歌曲对象
					playJson={};
					playJson["id"]=inp.value;
					playJson["music"]={};
					playJson["music"]["href"]=m.href;
					playJson["music"]["text"]=m.innerText;
					playJson["singer"]={};
					playJson["singer"]["text"]=s.innerText;
					playArray.push(playJson);
				};
			};
			if(!playArray.length){ alert("请选择你要播放的歌曲！");
			}else{
				var storage=new Persist.Store("www456vvcom");
					storage.set("playSel",Vv.json.toString(playArray));//[{id:"",music:{href:"",text:""},singer:{href:"",text:""}}]
					//打开新窗口
					if(!!Vv.BVersion("ie") || !!Vv.BVersion("opera")){fireMusic.click();
					}else if(!!Vv.BVersion("chrome")){Vv.createEvent(fireMusic,"click");
					}else{window.location=fireMusic.href;
					};
			}
		},
	//展开/收起
	develop : function(s,pos1,pos2,str1,str2,Event){
				var obj	= Vv.G(s);
				var ev	= Event||Vv.srcEvent();
				if(obj.getAttribute("develop")!=1){//1
					obj.setAttribute("height_",obj.style.height);
					obj.style.height="100%";
					obj.setAttribute("develop",1);
					ev.src.innerText=str1;
					ev.src.style.backgroundPosition=pos1;
				}else{//2
					obj.style.height=obj.getAttribute("height_");
					obj.removeAttribute("height_");
					obj.setAttribute("develop",0);
					ev.src.innerText=str2;
					ev.src.style.backgroundPosition=pos2;
				}
			},
	//统计IP
	countIP	: function(action,id){return setTimeout(function(){Vv.Ajax({url: "/inc/count/",data: "action="+action+"&id="+id})},10000)},
	//提交提示
	submit_set	: function (a,b,c,d){
					this.ShowMsg(a,1500);
					if(c){Vv.G(b).focus();}
					if(typeof d !== "undefined"){Vv.G(b).value=d;}
					return false;
				},
	//弹窗iframe
	ShowOpen	: function (url,t,w,h,obj){
					var w=w||150;
					var h=h||15;
					try{return VBox("ShowOpen",document,{title:t,showBg:false,showRun:true,width:w,height:h,top:"30",drag:true,type:"iframe",overflow:"hidden",url:url});}
					catch(e){
						var ReturnStr;
						try{ReturnStr=showModalDialog(url,"newWin",'dialogWidth:'+w+'px;dialogHeight:'+h+'px;status:no;help:no;scroll:no;status:0;help:0;scroll:0;');}
						catch(e){/*ReturnStr=window.open(url,'newWin','modal=yes,width='+w+'px,height='+h+'px,resizable=no,scrollbars=no');*/}
						if(ReturnStr!=null){try{obj.value=ReturnStr;}catch(e){}};
					}
				},
	//弹窗提示
	ShowMsg	: function (str,time,w,h,p,t,l){
				time=(typeof time=="number")?time:1500;
				w=w||150;
				h=h||30;
				p=p||"relative";
				t=t||"30"
				l=l||"auto";
				try{return VBox("ShowMsg",document,{title:"无标题",noTitle:true,showBg:false,showRun:true,width:w,height:h,position:p,top:t,left:l,opacity:90,drag:false,timeout:time,type:"html",overflow:"hidden",html:"<div style='width:"+w+"px;height:"+h+"px;line-height:"+h+"px;text-align:center;'>"+str+"</div>"});}
				catch(e){alert(str);}
			},
	/*
	精简无刷列表 1.0
	var commentList=new Fu.CList
	commentList.init({
		url:"/inc/comments/JsonList.asp",
		listObj:Vv.G("commentList"),
		pageObj:Vv.G("commentPage"),
		query:{id:"",songid:"2"},
		cache:false,
		run:false,
		list:"<div class=\"ccc_lists\"><div class=\"cccl_left\"><img src=\"_图片_\"\/>_用户昵称_<\/div><div class=\"cccl_top\"><span class=\"ccclt_time\">_时间_<\/span><div class=\"ccclt_vote\"><span class=\"a\">支持(_支持_)<\/span><span class=\"b\">反对(_反对_)<\/span><\/div><\/div><div class=\"cccl_bottom\"><p>_内容__用户昵称_<\/p><\/div><div class=\"clear\"><\/div><\/div>",
		noList:"<div style=\"height:25px;padding-top:25px;text-align:center;\">暂时没有评论！</div>"
		});
	文件：JsonList.asp 格式 如 {startid:"4",endid:"3",totalpage:1,bool:true,data:[{"_ID_":"4","_\u56FE\u7247_":"/uploads\/20110825\/20110825152614971497.jpg","_\u7528\u6237ID_":"2","_\u7528\u6237\u6635\u79F0_":"admin","_\u65F6\u95F4_":"2011-8-12 12:03:13","_\u652F\u6301_":"3","_\u53CD\u5BF9_":"1",_\u5185\u5BB9_:"\u593A\u7684\u6709\u8981\u7684\u786E"},{"_ID_":"3","_\u56FE\u7247_":"/images\/jpg\/001.jpg","_\u7528\u6237ID_":"0","_\u7528\u6237\u6635\u79F0_":"\u5E38\u5728","_\u65F6\u95F4_":"2011-8-28 10:11:10","_\u652F\u6301_":"41","_\u53CD\u5BF9_":"432",_\u5185\u5BB9_:"\u74E3\u4EE5\u542C\u4EA7\u53F6\u7D27\u63A5\u7740\uFF0C\u593A\u8089\u5236\u54C1 \u4E2D\u8747"}]}
	*/
	CList	: function (){
		this.url	= null;			//地址
		this.listObj= null;			//List对象
		this.pageObj= null;			//page对象
		this.run	= true;			//自加载
		this.list	= "";			//列表HTML
		this.noList	= "";			//无列表HTML
		this.cache	= true;			//是否支持缓存
		this.query	= {id:""};		//设置初始读取数据的ID
		this.maxLen		= false;	//默认不支持多行（删除/选中）
		this.mouseID	= null;		//记录单击行ID
		this.mouseObj	= null;		//记录单击对象

		this.selID	= [];			//记录当前单击选择行ID
		this.selObj	= [];			//记录当前单击选择对象

		this.dataC	= [];			//记录数据
		this.recordC= [];			//记录数据ID
		this.currentPageI	= 0;	//记录当前页数
		this.totalPageI		= 0;	//记录总页数
		this.parentPageI	= 0;	//记录父页数
		var me=this;

		//-------------
		this.Event={};//初始化
		(new Vv.Model()).init(this.Event);//设置模型
		//-------------

		//初始化配置
		this.init=function(hash){
			Vv.json.extend(me,hash);
			if(me.run){me.Ajax();}
		};
		//转parameters
		this.parameters=function(){
			var Q=this.query;
			var P="";
			for(var i in Q){
				if(P!==""){P+="&";}
				P+=i+"="+Vv.enES(Q[i]);
			}
			return P
		};
		//Ajax下载列表
		this.Ajax_Record	= 0;
		this.Ajax=function(){
			if(me.Ajax_Record>5){return;}
			Vv.Ajax({
				url			: me.url,
				method		: "get",
				async		: false,
				data		: me.parameters(),
				dataType	: 'json',
				succeed		: function(c){
					me.ListDelete()//删除原列表
					me.ListAdd(c);//增加列表
				},
				status		: function(c){
					me.Ajax_Record+=1;
					setTimeout(me.Ajax,1000);
				},
				rnd			:true
			})
		};
		//增加列表
		this.ListAdd=function(c){
			var self={list:"",html:""};
			if(me.Event.read("listAdd","front",{"me":me,"self":self},this)===false){return false;}

			if(c.bool){ me.recordPage(c);//记录页数
			}else{//没有数据
				self.html+=me.noList;
				me.listObj.innerHTML=self.html;
				me.Event.read("listAdd","back",{"me":me});
				return;
			}
			//读出行-列
			var data= c.data;
			for(var i in data){
				self.list=me.list;
				if(me.Event.read("listAdd","line",{"me":me,"self":self},this)===false){break;}
				for(var j in data[i]){
					self.list= self.list.replace(eval("/"+j+"/igm"),data[i][j]);
				}
				self.html+=self.list;
			}
			me.listObj.innerHTML=self.html;
			me.Event.read("listAdd","back",{"me":me});
		};
		//删除列表
		this.ListDelete=function(){
			if(me.Event.read("listDelete","front",{"me":me},this)===false){return false;}
			me.mouseID	= null;//初始化记录单击行ID
			me.mouseObj	= null;//初始化记录单击对象
			me.selID	= [];//初始化记录当前单击选择行
			me.selObj	= [];//初始化记录当前单击选择对象
			if(me.Event.read("listDelete","back",{"me":me},this)===false){return false;}
		};
		//移除行
		this.ListRemove=function(){
			var dataC=me.dataC[me.currentPageI];
			if(me.Event.read("listRemove","front",{"me":me},this)===false){return false;}
			if(me.maxLen){//多行移除
				me.selID=Vv.array.sort(me.selID,"desc");
				for(i=0,len=me.selID.length;i<len;i++){//>
					dataC.data.splice(me.selID[i]-1,1)
				}
				me.selID=[];
				me.selObj=[];
			}else{
				dataC.data.splice(me.mouseID,1)
			}
			if(me.Event.read("listRemove","back",{"me":me},this)===false){return false;}
			me.ListDelete()//删除原列表
			me.ListAdd(dataC);//增加列表
		};
		//记录页数
		this.recordPage=function(c){
			//记录数据
			me.dataC[me.currentPageI]=c;
			//记录数据始/束ID
			var recordC		= me.recordC;//[[9,7],[6,3],[2,0]]
			if(!recordC.length&&c.totalpage>1){me.createPage()/*创建页脚*/};
			var rtemp=[];
			rtemp[0]=parseInt(c.startid);
			rtemp[1]=parseInt(c.endid);
			recordC[me.currentPageI]=rtemp;
			//总页数
			if(!me.totalPageI){me.totalPageI= c.totalpage;}//首次得到总页数(可在动态页设置URL参数ID为空，读出总页数。而有ID就不用读出总页数。这样就不用每次搜数据库统计总页数)
			//设置页脚
			if(me.totalPageI>1){me.innerPage();}
		};
		//创建页脚
		this.createPage=function(){
			me.pageObj.innerHTML='<span id="uppage">&nbsp;</span><span id="currentpage"></span>/<span id="totalpage"></span><span id="downpage">&nbsp;</span>>>'
			//设置页脚CSS名称
			Vv.setClassName(me.pageObj,"pagefoot");
		};
		//插入页脚条数
		this.innerPage=function(){
			var clickOver=false;//判断是否是重复点击
			var UpPage	= Vv.G("uppage");
			UpPage.onclick=function(){
				if(me.currentPageI>0&&!clickOver){
					clickOver=true;
					me.currentPageI--;
					me.clickPage(me.recordC[me.currentPageI][0]+1);
				}
			}
			var DownPage= Vv.G("downpage");
			DownPage.onclick=function(){
				if((me.currentPageI+1)<me.totalPageI&&!clickOver){//>
					clickOver=true;
					me.currentPageI++;
					me.clickPage(me.recordC[me.currentPageI-1][1]);
				}
			}
			var CurrentPage	= Vv.G("currentpage");
			CurrentPage.innerText	= me.currentPageI+1;
			var TotalPage	= Vv.G("totalpage");
			TotalPage.innerText		= me.totalPageI;

			//判断是否已有页存在，如果有就移除“红色”
			var pPage		= Vv.G("pages_"+me.parentPageI);
			if(!!pPage){Vv.removeClassName(pPage,"red")}

			var Pages		= Vv.G("pages_"+me.currentPageI);
			if(!Pages){
				var CSpan=Vv.CElement("span",me.pageObj)
				CSpan.id	= "pages_"+me.currentPageI;
				CSpan.setAttribute("i",me.currentPageI);
				CSpan.value	= me.recordC[me.currentPageI][0]+1;//在原有数据ID上加1
				CSpan.className="pages"
				CSpan.innerText=me.currentPageI+1;//当前页默认为0 所以要+1
				Vv.addClassName(CSpan,"red");
				CSpan.onclick=function(){
					me.currentPageI=this.getAttribute("i");
					me.clickPage(this.value);
				}
			}else{
				Vv.addClassName(Pages,"red")
			}
			me.parentPageI=me.currentPageI;//设置父记录
		};
		//页脚点击
		this.clickPage=function(id){
			var record=me.recordC[me.currentPageI];
			if(me.cache){
				if(typeof record!="undefined"){
					me.ListDelete()//删除原列表
					me.ListAdd(me.dataC[me.currentPageI]);//增加列表
					return;
				}
			};
			if(!id){id=record[0]+1;}
			me.query.id=id//设置ID
			me.Ajax();//重新下载新列表
		};
	}


}















