//焦点图构造函数 071221 mengjia
//FocusPic(BigPicID,SmallPicsID,TitleID,MemoID) 大图容器ID，小图列表容器ID，标题容器ID ,说明容器ID
//	add(BigPic,SmallPic,Url,Title,Memo) 大图地址，小图地址，链接地址，标题，说明文字
//	begin() 开始执行
//	TimeOut = 5000 默认切换时间
function FocusPic(BigPicID,SmallPicsID,TitleID,MemoID,width,height){
	this.Data = [];
	this.ImgLoad = [];
	this.TimeOut = 5000;
	var isIE = navigator.appVersion.indexOf("MSIE")!=-1?true:false;
	this.width = width;
	this.height = height;
	this.selectedIndex = 0;
	var TimeOutObj;
	if(!FocusPic.childs){FocusPic.childs = []};
	this.showTime = null;
	this.showSum = 10;
	this.ID = FocusPic.childs.push(this) - 1;
	this.listCode = '<span><a href="[$url]" target="_blank"><img src="[$pic]" onmouseover="FocusPic.childs[[$thisId]].select([$num])" alt="[$title]" /></a></span>';
	this.Add = function(BigPic,SmallPic,Title,Url,Memo){
		var ls;
		this.Data.push([BigPic,SmallPic,Title,Url,Memo]);
		//预载图片
		ls = this.ImgLoad.length;
		this.ImgLoad.push(new Image());
		this.ImgLoad[ls].src = BigPic;
	};
	this.TimeOutBegin = function(){
		clearInterval(TimeOutObj);
		TimeOutObj = setInterval("FocusPic.childs[" + this.ID + "].next()",this.TimeOut);
	};
	this.TimeOutEnd = function(){
		clearInterval(TimeOutObj);
	};
	this.select = function(num,noAction){
		if(num>this.Data.length - 1){return};
		if(num == this.selectedIndex){return};
		this.TimeOutBegin();

		if(BigPicID){if(this.$(BigPicID)){
			var aObj = this.$(BigPicID).getElementsByTagName("a")[0];
			aObj.href = this.Data[num][2];

			if(this.aImgY){
				this.aImgY.style.display = 'none';
				//this.aImg.style.position = "relative";
				//this.aImg.style.left = 0;
				//this.aImg.style.top = 0;
				this.aImg.style.zIndex = 0;
			};

			this.aImgY = this.$('F' + this.ID + 'BF' + this.selectedIndex);
			this.aImg = this.$('F' + this.ID + 'BF' + num);

			clearTimeout(this.showTime);
			this.showSum = 10;
			if(!noAction){
				this.showTime = setTimeout("FocusPic.childs[" + this.ID + "].show()",50);
			}else{
				if(isIE){
					this.aImg.style.filter = "alpha(opacity=100)";

				}else{
					this.aImg.style.opacity = 1;
				};
			};

		}};
		if(TitleID){if(this.$(TitleID)){
			this.$(TitleID).innerHTML = "<a href=\"" + this.Data[num][2] + "\" target=\"_blank\"><strong>" + this.Data[num][3] + "</strong></a>";
		}};
		if(MemoID){if(this.$(MemoID)){
			this.$(MemoID).innerHTML = this.Data[num][4];
		}};
		if(SmallPicsID){if(this.$(SmallPicsID)){
			var sImg = this.$(SmallPicsID).getElementsByTagName("span"),i;
			for(i=0;i<sImg.length;i++){
				if(i==num || num == (i - this.Data.length)){sImg[i].className = "selected"}else{sImg[i].className = ""};
			}
		}};
		this.selectedIndex = num;
		if(this.onchange){
			this.onchange();
		};
	};
	var absPosition = function(obj,parentObj){
		var left = obj.offsetLeft;
		var top = obj.offsetTop;
		var tempObj = obj;
		while(tempObj.id!=document.body & tempObj.id!=document.documentElement & tempObj != parentObj){
			tempObj = tempObj.offsetParent;
			left += tempObj.offsetLeft;
			top += tempObj.offsetTop;
		};
		return {left:left,top:top};
	};
	this.show = function(){
		this.showSum --;
		if(this.aImgY){this.aImgY.style.display = 'block'};

		this.aImg.style.display = 'block';
		if(isIE){
			this.aImg.style.filter = "alpha(opacity=0)";
			this.aImg.style.filter = "alpha(opacity=" + (10 - this.showSum) * 10 + ")";

		}else{
			this.aImg.style.opacity = 0;
			this.aImg.style.opacity = (10 - this.showSum) * 0.1;
		};
		if(this.showSum <= 0){
			if(this.aImgY){this.aImgY.style.display = 'none'};
			this.aImg.style.zIndex = 0;
			this.aImgY = null;
		}else{
			this.aImg.style.zIndex = 2;
			this.showTime = setTimeout("FocusPic.childs[" + this.ID + "].show()",50);
		};
	};
	this.next = function(){
		var temp = this.selectedIndex;
		temp++;
		if(temp>=this.Data.length){temp=0};
		this.select(temp);
	};
	this.pre = function(){
		var temp = this.selectedIndex;
		temp--;
		if(temp<0){temp=this.Data.length-1};
		this.select(temp);
	};
	this.MInStopEvent = function(ObjID){
		if(ObjID){if(this.$(ObjID)){
			if(this.$(ObjID).attachEvent){ //绑定
				this.$(ObjID).attachEvent("onmouseover",Function("FocusPic.childs[" + this.ID + "].TimeOutEnd()"));
				this.$(ObjID).attachEvent("onmouseout",Function("FocusPic.childs[" + this.ID + "].TimeOutBegin()"));
			}else{
				this.$(ObjID).addEventListener("mouseover",Function("FocusPic.childs[" + this.ID + "].TimeOutEnd()"),false);
				this.$(ObjID).addEventListener("mouseout",Function("FocusPic.childs[" + this.ID + "].TimeOutBegin()"),false);
			}
		}}
	};
	this.begin = function(){
		this.MInStopEvent(TitleID);
		this.MInStopEvent(SmallPicsID);
		this.MInStopEvent(BigPicID);
		this.selectedIndex = -1;
		var i,temp = "";
		if(BigPicID){if(this.$(BigPicID)){ //大图
			var aObj = this.$(BigPicID).getElementsByTagName("a")[0];
			aObj.style.zoom = 1;
			this.$(BigPicID).style.position = "relative";
			this.$(BigPicID).style.zoom = 1;
			this.$(BigPicID).style.overflow = "hidden";

			for(i=0;i<this.Data.length;i++){
				//temp += '<img src="' + this.Data[i][0] + '" id="F' + this.ID + 'BF' + i + '" style="display:' + (i==0?'block':'none') + '" galleryimg="no"' + (this.width?' width="' + this.width + '"':'330px') + (this.height?' height="' + this.height + '"':'227px') + ' alt="' + this.Data[i][3] + '" />';
				temp += '<img src="' + this.Data[i][0] + '" id="F' + this.ID + 'BF' + i + '" style="display:' + (i==0?'block':'none') + '" galleryimg="no" width="490px" height="255px"' + ' alt="' + this.Data[i][3] + '" />';
			};
			aObj.innerHTML = temp;
			var imgObjs = aObj.getElementsByTagName("img");
			var XY = absPosition(imgObjs[0],this.$(BigPicID));
			for(i=0;i<imgObjs.length;i++){
				imgObjs[i].style.position = "absolute";
				imgObjs[i].style.top = XY.top + "px";
				imgObjs[i].style.left = XY.left + "px";
			};

		}};
		if(SmallPicsID){if(this.$(SmallPicsID)){
			tempHTML = "";
			for(i=0;i<this.Data.length;i++){
				temp = this.listCode;
				temp = temp.replace(/\[\$url\]/ig,this.Data[i][2]);
				temp = temp.replace(/\[\$pic\]/ig,this.Data[i][1]);
				temp = temp.replace(/\[\$thisId\]/ig,this.ID);
				temp = temp.replace(/\[\$num\]/ig,i);
				temp = temp.replace(/\[\$num\+1\]/ig,i+1);
				temp = temp.replace(/\[\$title\]/ig,this.Data[i][3]);
				tempHTML += temp;
			};
			//alert(tempHTML);
			this.$(SmallPicsID).innerHTML = tempHTML;
		}};

		this.TimeOutBegin();
		this.select(0,true);
	};
	this.$ = function(o){if(o && typeof o==='string'){return document.getElementById(o)}else{return o}}
};

function SubShowClass(ID,eventType,defaultID,openClassName,closeClassName){
	var t = this;
	this.parentObj = this.$(ID); //舌签主容器ID
	if(this.parentObj == null && ID != "none"){throw new Error("SubShowClass(ID)参数错误:ID 对像不存在!(value:" + ID + ")")};

	this.lock = false; //锁
	this.label = [];

	this.defaultID = defaultID==null?0:defaultID;

	this.selectedIndex = this.defaultID;

	this.openClassName = openClassName==null?"selected":openClassName;
	this.closeClassName = closeClassName==null?"":closeClassName;

	//鼠标移入移出
	this.mouseIn = false;
	var mouseInFunc = function(){t.mouseIn = true;};
	var mouseOutFunc = function(){t.mouseIn = false;};
	if(ID != "none" && ID != ""){if(this.parentObj.attachEvent){this.parentObj.attachEvent("onmouseover",mouseInFunc)}else{this.parentObj.addEventListener("mouseover",mouseInFunc,false)};};
	if(ID != "none" && ID != ""){if(this.parentObj.attachEvent){this.parentObj.attachEvent("onmouseout",mouseOutFunc)}else{this.parentObj.addEventListener("mouseout",mouseOutFunc,false)};};

	if(typeof(eventType) != "string"){eventType = "onmousedown"};
	eventType = eventType.toLowerCase(); //触发事件
	switch(eventType){
		case "onmouseover":
			this.eventType = "mouseover";
			break;
		case "onmouseout":
			this.eventType = "mouseout";
			break;
		case "onclick":
			this.eventType = "click";
			break;
		case "onmouseup":
			this.eventType = "mouseup";
			break;
		default :
			this.eventType = "mousedown";
	};

	//播放停止
	this.autoPlay = false;
	this.autoPlayTimeObj = null;
	this.spaceTime = 5000;
};

SubShowClass.prototype = {
	version : "1.31",
	author : "mengjia",
	_setClassName : function(obj,type){
		var temp;
		temp = obj.className;
		if(temp){
			temp = temp.replace(this.openClassName,"");
			temp = temp.replace(this.closeClassName,"");
			temp += " " + (type=="open"?this.openClassName:this.closeClassName);
		}else{
			temp = (type=="open"?this.openClassName:this.closeClassName);
		};
		obj.className = temp;
	},
	//添加标签
	addLabel : function(labelID,contID,parentBg,springEvent,blurEvent){ 
		var t = this;
		var labelObj = this.$(labelID);
		var contObj = this.$(contID);
		if(labelObj == null && labelID != "none"){throw new Error("addLabel(labelID)参数错误:labelID 对像不存在!(value:" + labelID + ")")};
		var TempID = this.label.length;
		if(parentBg==""){parentBg=null};

		this.label.push([labelID,contID,parentBg,springEvent,blurEvent]); //绑定默认事件
		var tempFunc = function(){t.select(TempID);};
		if(labelID != "none"){
			if(labelObj.attachEvent){labelObj.attachEvent("on" + this.eventType,tempFunc)}else{labelObj.addEventListener(this.eventType,tempFunc,false)};
		};

		if(TempID == this.defaultID){ //默认状态
			if(labelID != "none"){
				this._setClassName(labelObj,"open");
			};
			if(this.$(contID)){contObj.style.display = ""};
			if(this.ID != "none"){if(parentBg != null){this.parentObj.style.background = parentBg};};
			if(springEvent != null){eval(springEvent)};
		}else{
			if(labelID != "none"){this._setClassName(labelObj,"close");};
			if(contObj){contObj.style.display = "none";}
		};
		var mouseInFunc = function(){t.mouseIn = true;};
		var mouseOutFunc = function(){t.mouseIn = false;};
		//鼠标移入移出
		if(contObj){
			if(contObj.attachEvent){contObj.attachEvent("onmouseover",mouseInFunc)}else{contObj.addEventListener("mouseover",mouseInFunc,false)};
			if(contObj.attachEvent){contObj.attachEvent("onmouseout",mouseOutFunc)}else{contObj.addEventListener("mouseout",mouseOutFunc,false)};
		}

	},
	//选择标签
	select : function(num,force){
		if(typeof(num)!="number"){throw new Error("select(num)参数错误:num 不是 number 类型!(value:" + num + ")")};
		if(force != true && this.selectedIndex == num){return};
		var i;
		for(i=0;i<this.label.length;i++){
			if(i==num){
				if(this.label[i][0] != "none"){
					this._setClassName(this.$(this.label[i][0]),"open");
				};
				if(this.$(this.label[i][1])){this.$(this.label[i][1]).style.display = ""};
				if(this.ID != "none"){if(this.label[i][2]!=null){this.parentObj.style.background = this.label[i][2]};};
				if(this.label[i][3]!=null){eval(this.label[i][3])};

			}else if(this.selectedIndex == i || force == true){
				if(this.label[i][0] != "none"){
					this._setClassName(this.$(this.label[i][0]),"close");
				};
				if(this.$(this.label[i][1])){this.$(this.label[i][1]).style.display = "none"};
				if(this.label[i][4]!=null){eval(this.label[i][4])};
			}
		};
		this.selectedIndex = num;
	},
	//随机
	random : function(){ //随机，参数为一组数字，表示百分比
		if(arguments.length != this.label.length){throw new Error("random()参数错误:参数数量与标签数量不符!(length:" + arguments.length + ")")};
		var sum = 0,i;
		for(i=0;i<arguments.length;i++){sum+=arguments[i]}; //sum
		var randomNum = Math.random(),percent = 0;
		for(i=0;i<arguments.length;i++){
			percent += arguments[i]/sum;
			if(randomNum < percent){
				this.select(i);
				break;
			}
		}
	},
	//顺序播放
	order : function(){
		if(arguments.length != this.label.length){throw new Error("order()参数错误:参数数量与标签数量不符!(length:" + arguments.length + ")")};
		if(!(/^\d+$/).test(SubShowClass.sum)){return};
		var count = 0,i;
		for(i=0;i<arguments.length;i++){count+=arguments[i]}; //sum
		var num = SubShowClass.sum % count;
		if(num == 0){num = count};
		var sum = 0;
		for(i=0;i<arguments.length;i++){
			sum += arguments[i];
			if(sum >= num){
				this.select(i);
				break;
			};
		};

	},
	play : function(spTime){ //播放
		var t = this;
		if(typeof(spTime) == "number"){this.spaceTime = spTime};
		clearInterval(this.autoPlayTimeObj);
		this.autoPlayTimeObj = setInterval(function(){t.autoPlayFunc();},this.spaceTime);
		this.autoPlay = true;
	},
	autoPlayFunc : function(){
		if(this.autoPlay == false || this.mouseIn == true){return};
		this.nextLabel();
	},
	nextLabel : function(){ //下一个
		var t = this;
		var index = this.selectedIndex;
		index ++;
		if(index >= this.label.length){index = 0};
		this.select(index);
		if(this.autoPlay == true){
			clearInterval(this.autoPlayTimeObj);
			this.autoPlayTimeObj = setInterval(function(){t.autoPlayFunc();},this.spaceTime);
		};
	},
	previousLabel : function(){ //上一个
		var t = this;
		var index = this.selectedIndex;
		index --;
		if(index < 0){index = this.label.length - 1};
		this.select(index);
		if(this.autoPlay == true){
			clearInterval(this.autoPlayTimeObj);
			this.autoPlayTimeObj = setInterval(function(){t.autoPlayFunc();},this.spaceTime);
		};
	},
	stop : function(){
		clearInterval(this.autoPlayTimeObj);
		this.autoPlay = false;
	},
	$ : function(objName){if(document.getElementById){return eval('document.getElementById("'+objName+'")')}else{return eval('document.all.'+objName)}}
};

//滚动图片构造函数
//UI&UE Dept. mengjia
//滚动图片构造函数
//UI&UE Dept. mengjia
function ScrollPic(scrollContId,arrLeftId,arrRightId,dotListId,listType){

	this.scrollContId = scrollContId; //内容容器ID
	this.arrLeftId = arrLeftId; //左箭头ID
	this.arrRightId = arrRightId; //右箭头ID
	this.dotListId = dotListId; //点列表ID
	this.listType = listType; //列表类型

	this.dotClassName   = "dotItem";//点className
	this.dotOnClassName   = "dotItemOn";//当前点className
	this.dotObjArr = [];
	this.listEvent = "onclick";
	this.circularly = true; //循环滚动（无缝循环）

	this.pageWidth = 0; //翻页宽度
	this.frameWidth = 0; //显示框宽度
	this.speed = 10; //移动速度(单位毫秒，越小越快)
	this.space = 10; //每次移动像素(单位px，越大越快)

	this.upright = false; //垂直的滚动

	this.pageIndex = 0;

	this.autoPlay = true;
	this.autoPlayTime = 5; //秒

	this._autoTimeObj;
	this._scrollTimeObj;
	this._state = "ready"; // ready | floating | stoping

	this.stripDiv = document.createElement("DIV");

	this.lDiv01 = document.createElement("DIV");
	this.lDiv02 = document.createElement("DIV");
};
ScrollPic.prototype = {
	version : "1.40",
	author : "mengjia",
	pageLength : 0,
	initialize : function(){ //初始化
		var thisTemp = this;
		if(!this.scrollContId){
			throw new Error("必须指定scrollContId.");
			return;
		};
		this.scDiv = sina.$(this.scrollContId);
		if(!this.scDiv){
			throw new Error("scrollContId不是正确的对象.(scrollContId = \""+ this.scrollContId +"\")");
			return;
		};

		this.scDiv.style[this.upright?'height':'width'] = this.frameWidth + "px";
		this.scDiv.style.overflow = "hidden";

		//HTML
		this.lDiv01.innerHTML = this.scDiv.innerHTML;
		this.scDiv.innerHTML = "";
		this.scDiv.appendChild(this.stripDiv);
		this.stripDiv.appendChild(this.lDiv01);
		if(this.circularly){//无缝循环
			this.stripDiv.appendChild(this.lDiv02);
			this.lDiv02.innerHTML = this.lDiv01.innerHTML
		};

		this.stripDiv.style.overflow = "hidden";
		this.stripDiv.style.zoom = "1";
		this.stripDiv.style[this.upright?'height':'width'] = "32766px";

		if(!this.upright){	
			this.lDiv01.style.cssFloat = "left";
			this.lDiv01.style.styleFloat = "left";
			this.lDiv01.style.overflow = "hidden";
		};
		this.lDiv01.style.zoom = "1";
		if(this.circularly && !this.upright){ //无缝循环设置CSS
			this.lDiv02.style.cssFloat = "left";
			this.lDiv02.style.styleFloat = "left";
			this.lDiv02.style.overflow = "hidden";
		};
		this.lDiv02.style.zoom = "1";

		sina.addEvent(this.scDiv,"mouseover",function(){thisTemp.stop()});
		sina.addEvent(this.scDiv,"mouseout",function(){thisTemp.play()});

		//Arrowhead event
		//left
		if(this.arrLeftId){
			this.alObj = sina.$(this.arrLeftId);
			if(this.alObj){
				sina.addEvent(this.alObj,"mousedown",function(){thisTemp.rightMouseDown()});
				sina.addEvent(this.alObj,"mouseup",function(){thisTemp.rightEnd()});
				sina.addEvent(this.alObj,"mouseout",function(){thisTemp.rightEnd()});
			};
		};
		//right
		if(this.arrRightId){
			this.arObj = sina.$(this.arrRightId);
			if(this.arObj){
				sina.addEvent(this.arObj,"mousedown",function(){thisTemp.leftMouseDown()});
				sina.addEvent(this.arObj,"mouseup",function(){thisTemp.leftEnd()});
				sina.addEvent(this.arObj,"mouseout",function(){thisTemp.leftEnd()});
			};
		};

		var pages = Math.ceil(this.lDiv01[this.upright?'offsetHeight':'offsetWidth'] / this.frameWidth),i,tempObj;
		this.pageLength = pages;

		//dot
		if(this.dotListId){
			this.dotListObj = sina.$(this.dotListId);
			this.dotListObj.innerHTML = "";
			if(this.dotListObj){

				for(i=0;i<pages;i++){
					tempObj = document.createElement("span");
					this.dotListObj.appendChild(tempObj);
					this.dotObjArr.push(tempObj);

					if(i==this.pageIndex){
						tempObj.className = this.dotOnClassName;
					}else{
						tempObj.className = this.dotClassName;
					};
					if(this.listType == 'number'){
						tempObj.innerHTML = i+1;
					}else if(this.listType !== ''){
						tempObj.innerHTML = this.listType;
					};
					tempObj.title = "第" + (i+1) + "页";
					tempObj.num = i;
					tempObj[this.listEvent] = function(){thisTemp.pageTo(this.num)};
				};
			};
		};
		this.scDiv[this.upright?'scrollTop':'scrollLeft'] = 0;
		//autoPlay
		if(this.autoPlay){this.play()};

		this._scroll = this.upright?'scrollTop':'scrollLeft';
		this._sWidth = this.upright?'scrollHeight':'scrollWidth';

		if(typeof(this.onpagechange) === 'function'){
			this.onpagechange();
		};

		this.iPad();
	},
	leftMouseDown : function(){
		if(this._state != "ready"){return};
		var thisTemp = this;
		this._state = "floating";
		this._scrollTimeObj = setInterval(function(){thisTemp.moveLeft()},this.speed);
	},
	rightMouseDown : function(){
		if(this._state != "ready"){return};
		var thisTemp = this;
		this._state = "floating";
		this._scrollTimeObj = setInterval(function(){thisTemp.moveRight()},this.speed);
	},
	moveLeft : function(){
		if(this.circularly){ //无缝循环
			if(this.scDiv[this._scroll] + this.space >= this.lDiv01[this._sWidth]){
				this.scDiv[this._scroll] = this.scDiv[this._scroll] + this.space - this.lDiv01[this._sWidth];
			}else{
				this.scDiv[this._scroll] += this.space;
			};
		}else{
			if(this.scDiv[this._scroll] + this.space >= this.lDiv01[this._sWidth] - this.frameWidth){
				this.scDiv[this._scroll] = this.lDiv01[this._sWidth] - this.frameWidth;
				//停
				this.leftEnd();
			}else{
				this.scDiv[this._scroll] += this.space;
			};
		};
		this.accountPageIndex();
	},
	moveRight : function(){
		if(this.circularly){ //无缝循环
			if(this.scDiv[this._scroll] - this.space <= 0){

				this.scDiv[this._scroll] = this.lDiv01[this._sWidth] + this.scDiv[this._scroll] - this.space;
			}else{
				this.scDiv[this._scroll] -= this.space;
			};
		}else{
			if(this.scDiv[this._scroll] - this.space <= 0){
				this.scDiv[this._scroll] = 0;
				//停
				this.rightEnd();
			}else{
				this.scDiv[this._scroll] -= this.space;
			};
		};
		this.accountPageIndex();
	},
	leftEnd : function(){
		if(this._state != "floating"){return};
		this._state = "stoping";
		clearInterval(this._scrollTimeObj);

		var fill = this.pageWidth - this.scDiv[this._scroll] % this.pageWidth;

		this.move(fill);
	},
	rightEnd : function(){
		if(this._state != "floating"){return};
		this._state = "stoping";
		clearInterval(this._scrollTimeObj);

		var fill = - this.scDiv[this._scroll] % this.pageWidth;

		this.move(fill);
	},
	move : function(num,quick){
		var thisTemp = this;
		var thisMove = num/5;
		if(!quick){
			if(thisMove > this.space){thisMove = this.space};
			if(thisMove < -this.space){thisMove = -this.space};
		};

		if(Math.abs(thisMove)<1 && thisMove!=0){
			thisMove = thisMove>=0?1:-1;
		}else{
			thisMove = Math.round(thisMove);
		};

		var temp = this.scDiv[this._scroll] + thisMove;

		if(thisMove>0){
			if(this.circularly){ //无缝循环
				if(this.scDiv[this._scroll] + thisMove >= this.lDiv01[this._sWidth]){
					this.scDiv[this._scroll] = this.scDiv[this._scroll] + thisMove - this.lDiv01[this._sWidth];
				}else{
					this.scDiv[this._scroll] += thisMove;
				};
			}else{
				if(this.scDiv[this._scroll] + thisMove >= this.lDiv01[this._sWidth] - this.frameWidth){
					this.scDiv[this._scroll] = this.lDiv01[this._sWidth] - this.frameWidth;
					this._state = "ready";
					return;
				}else{
					this.scDiv[this._scroll] += thisMove;
				};
			};
		}else{
			if(this.circularly){ //无缝循环
				if(this.scDiv[this._scroll] + thisMove < 0){
					this.scDiv[this._scroll] = this.lDiv01[this._sWidth] + this.scDiv[this._scroll] + thisMove;
				}else{
					this.scDiv[this._scroll] += thisMove;
				};
			}else{
				if(this.scDiv[this._scroll] - thisMove < 0){
					this.scDiv[this._scroll] = 0;
					this._state = "ready";
					return;
				}else{
					this.scDiv[this._scroll] += thisMove;
				};
			};
		};

		num -= thisMove;
		if(Math.abs(num) == 0){
			this._state = "ready";
			if(this.autoPlay){this.play()};
			this.accountPageIndex();
			return;
		}else{
			this.accountPageIndex();
			this._scrollTimeObj = setTimeout(function(){thisTemp.move(num,quick)},this.speed)
		};

	},
	pre : function(){
		if(this._state != "ready"){return};
		this._state = "stoping";
		this.pageTo(this.pageIndex - 1);
	},
	next : function(reStar){
		if(this._state != "ready"){return};
		this._state = "stoping";
		if(this.circularly){
			this.pageTo(this.pageIndex + 1);
		}else{
			if(this.scDiv[this._scroll] >= this.lDiv01[this._sWidth] - this.frameWidth){
				this._state = "ready";
				if(reStar){this.pageTo(0)};
			}else{
				this.pageTo(this.pageIndex + 1);
			};
		};
	},
	play : function(){
		var thisTemp = this;
		if(!this.autoPlay){return};
		clearInterval(this._autoTimeObj);
		this._autoTimeObj = setInterval(function(){thisTemp.next(true)},this.autoPlayTime * 1000);
	},
	stop : function(){
		clearInterval(this._autoTimeObj);
	},
	pageTo : function(num){
		if(this.pageIndex == num){return};
		if(num < 0){num = this.pageLength - 1};
		clearTimeout(this._scrollTimeObj);
		this._state = "stoping";
		var fill = num * this.frameWidth - this.scDiv[this._scroll];
		this.move(fill,true);
	},
	accountPageIndex : function(){
		var pageIndex = Math.floor(this.scDiv[this._scroll] / this.frameWidth);
		if(pageIndex == this.pageIndex){return};
		this.pageIndex = pageIndex;

		if(this.pageIndex > Math.floor(this.lDiv01[this.upright?'offsetHeight':'offsetWidth'] / this.frameWidth )){this.pageIndex = 0};
		var i;
		for(i=0;i<this.dotObjArr.length;i++){
			if(i==this.pageIndex){
				this.dotObjArr[i].className = this.dotOnClassName;
			}else{
				this.dotObjArr[i].className = this.dotClassName;
			};
		};

		if(typeof(this.onpagechange) === 'function'){
			this.onpagechange();
		};
	},

	iPadX : 0,
	iPadLastX : 0,
	iPadStatus : 'ok',
	iPad : function(){
		if(typeof(window.ontouchstart) === 'undefined'){ //不支持触屏
			return;	
		};

		var tempThis = this;
		sina.addEvent(this.scDiv,'touchstart',function(e){tempThis._touchstart(e)});
		sina.addEvent(this.scDiv,'touchmove',function(e){tempThis._touchmove(e)});
		sina.addEvent(this.scDiv,'touchend',function(e){tempThis._touchend(e)});
	},
	_touchstart : function(e){
		//if(this._state != "ready"){return};
		//this._state = 'touch';
		this.stop();
		this.iPadX = e.touches[0].pageX;
		this.iPadScrollX = window.pageXOffset;
		this.iPadScrollY = window.pageYOffset; //用于判断页面是否滚动
		this.scDivScrollLeft = this.scDiv[this._scroll];
	},
	_touchmove : function(e){
		//if(this._state != "touch"){return};

		if(e.touches.length > 1){ //多点触摸
			this.iPadStatus = 'ok';
			return;
		};
		this.iPadLastX = e.touches[0].pageX;
		var cX = this.iPadX - this.iPadLastX;

			/*if(this.circularly == false){
				return;
			};*/

		if(this.iPadStatus == 'ok'){
			if(this.iPadScrollY == window.pageYOffset && this.iPadScrollX == window.pageXOffset && Math.abs(cX)>50){ //横向触摸
				this.iPadStatus = 'touch';
			}else{
				return;
			};
		};
		this._state = 'touch';
		var scrollNum = this.scDivScrollLeft + cX;

		if(scrollNum >= this.lDiv01[this._sWidth]){
			scrollNum = scrollNum - this.lDiv01[this._sWidth];
		};
		if(scrollNum < 0){
			scrollNum = scrollNum + this.lDiv01[this._sWidth];
		};
		this.scDiv[this._scroll] = scrollNum;
		e.preventDefault();
	},
	_touchend : function(e){

		if(this.iPadStatus != 'touch'){return};
		this.iPadStatus = 'ok';
		this._state = 'ready';
		var cX = this.iPadX - this.iPadLastX;
		if(cX<0){
			this.pre();
		}else{
			this.next();
		};
		this.play();
	}
};

