/*
n	ID
tag	标题标签[0-否,1-是](提取图片Title中<b></b>部份文字)
Txt	是否显示文字[0-否,1-是]
*/
function TransformView (n,tag,Txt){
	var TV=this,Banner=$(n),T='';
	Banner.innerHTML='<div class="AD_List">'+Banner.innerHTML+'</div>';
	this.index=0;

	this.Step=5;		//滑动变化率
	this.timer=10;		//定时器
	this.Up=true;		//是否向上(否则向左)
	this.Auto=true;		//是否自动转换
	this.Pause=3000;	//停顿时间(Auto为true时有效)
	this.target=0;		//目标参数
	
	this.slider=Banner.getElementsByTagName('UL')[0];
	this.Count=this.slider.getElementsByTagName('LI').length;/*切换数量*/
	this.Width=this.slider.getElementsByTagName('LI')[0].getElementsByTagName('IMG')[0].offsetWidth;
	this.Height=this.slider.getElementsByTagName('LI')[0].getElementsByTagName('IMG')[0].offsetHeight;
	
//	alert(this.slider.getElementsByTagName('LI')[0].innerHTML+'\n\n\n'+Banner.innerHTML);
	//文字描述层
	if(Txt==1){
		//背景层
		var div=document.createElement("div");div.className='AD_Text_BG';Banner.appendChild(div);
		//文字层
		var div=document.createElement("div");div.innerHTML=this.GetTitle(0);div.className='AD_Text';this.AD_Text=Banner.appendChild(div);
	}
	
	//生成Label
	var ul=document.createElement("ul");
	ul.className='ADNum';
	for(var i=1;i<this.Count+1;i++){
		var CL=document.createElement("li");
		T=i;
		//.split('</strong>')[0].substring(8)
		if(tag==1){T='<a>'+this.GetTitle(i-1)+'</a>';}
		CL.innerHTML=T;
		
		CL.onmouseover=(function(i,CL){return function(){CL.className='On';TV.index=i-1;TV.nextAd();}})(i,CL);
		CL.onmouseout=(function(i,CL){return function(){CL.className='';TV.index=i-1;TV.nextAd();}})(i,CL);
		ul.appendChild(CL);
	}
	Banner.appendChild(ul);
	this.AdNum=Banner.getElementsByTagName('UL')[1].getElementsByTagName('LI');
	TV.nextAd();
}


TransformView.prototype={
nextAd : function(){
	if(this.index<0){this.index=this.Count-1;}
	else if(this.index>=this.Count){this.index=0;}

	this.target=-1*(this.Up?this.Height:this.Width)*this.index;
	for(var i=0;i<this.AdNum.length;i++){this.AdNum[i].className='';}
	//切换描述文字
	if(this.AD_Text){this.AD_Text.innerHTML=(this.GetURL(this.index)=='')?this.GetTitle(this.index):'<a href="'+this.GetURL(this.index)+'" target="_blank">'+this.GetTitle(this.index)+'</a>';}
	this.AdNum[this.index].className='On';
	this.Move();
},
//移动
Move: function() {
	clearTimeout(this.timer);
	var oThis=this,style=this.Up?"top":"left",iNow=parseInt(this.slider.style[style])||0,iStep=this.GetStep(this.target,iNow);
	
	if(iStep!=0){
		this.slider.style[style]=(iNow+iStep)+"px";
		this.timer=setTimeout(function(){oThis.Move();},10);
	}else{
		this.slider.style[style]=this.target+"px";
		if(this.Auto){this.timer=setTimeout(function(){oThis.index++;oThis.nextAd();},this.Pause);}
	}
},
//获取步长
GetStep: function(iTarget, iNow) {
	var iStep=(iTarget-iNow)/this.Step;
	if(iStep==0)return 0;
	if(Math.abs(iStep)<1) return (iStep>0?1:-1);
	return iStep;
},
//获取alt[替换文本]
GetTitle: function(n){
	return this.slider.getElementsByTagName('LI')[n].getElementsByTagName('IMG')[0].alt;
},
//获取URL
GetURL: function(n){
	if(this.slider.getElementsByTagName('LI')[n].getElementsByTagName('A')[0])
	{return this.slider.getElementsByTagName('LI')[n].getElementsByTagName('A')[0].href;}
	else{return '';}
}
}

