/** 
 * @projectDescription	banner组自动播放插件for jQuery1.32
 *						每个页面只能建立一个bannerGroup。调用方法： DomElement.BannerGroup(options)
 *
 * @author 	lynn.LH
 * @version 	0.5
 * @since	0.5
*/
(function($){	//可在范围内直接用$替代关键字jQuery
$.fn.BannerGroup = function(options){
	$.BannerGroup = {};  //存放插件数据
	$.BannerGroup.Setting = $.extend({
		banners:[
			{alt:"图片1", src:"1.jpg", href:"#1"},
			{alt:"图片2", src:"2.jpg", href:"#2"},
			{alt:"图片3", src:"3.jpg", href:"#3"}
		], 
		width: "700px",	
		height: "180px",
		autoplay: 0	//播放速度（毫秒）。0为不自动播放
	}, options); //end $.BannerGroup.Setting
	
	$.BannerGroup.Div = $(this);	//作为bannerGroup的div
	$.BannerGroup.Div.addClass("bannergroup"); //样式位于jQuery.BannerGroup.1.0.css
	$.BannerGroup.Div.css("width", $.BannerGroup.Setting.width);
	$.BannerGroup.Div.css("height", $.BannerGroup.Setting.height);
	$.BannerGroup.Banners = {};	//声明变量存放banner图片
	$.BannerGroup.Buttons = {};	//声明变量存放按钮
	$.BannerGroup.BannerIndex = 1;	//当前显示的banner索引号
	
	var autoHandle = 0;	//计数器句柄
	var lastAutoPlayIndex = 1;	//最后一个自动播放的图片序号
	
	//将所有图片和按钮保存在$.BannerGroup集合以及实体div中
	for(var i = 0; i < $.BannerGroup.Setting.banners.length; i++){
		var $banner = $("<img />");
		$banner.attr("src", $.BannerGroup.Setting.banners[i].src);
		$banner.attr("alt", $.BannerGroup.Setting.banners[i].alt);
		$banner.attr("width", "993");
		$banner.attr("height", "102");
		var $hyperlink = $("<a></a>");
		$hyperlink.attr("href", $.BannerGroup.Setting.banners[i].href);
		$banner.appendTo($hyperlink);	//结构：<a><img /></a>
		$hyperlink.appendTo($.BannerGroup.Div);
		var indexKey = i+1;
		$.BannerGroup.Banners[indexKey] = $banner;	//将banner保存到$.BannerGroup集合 下标从1开始
		
		var $button = $("<div class='button'></div>");
		$button.text(indexKey);
		$button.appendTo($.BannerGroup.Div);
		$.BannerGroup.Buttons[indexKey] = {	//将button保存到$.BannerGroup集合 下标从1开始
			"button": $button,
			"index": indexKey
		};			
	};//end for
	
	
	$.each($.BannerGroup.Buttons, function(i, n){	//i循环索引， n对应的按钮对象
		//修正按钮位置
		var buttonWidth = 13+2+3; // 一个按钮占据的宽度 13 + 边框粗1×2 +按钮间距 3
		var allButtonsWidth = $.BannerGroup.Setting.banners.length	* buttonWidth +2;  //所有按钮连同间距加起来的宽度 + 所有按钮组成的按钮组右边距 2
		var buttonRight = allButtonsWidth - i*buttonWidth; 
		fixButtonPosition(n, buttonRight, 2);
		//绑定按钮点击事件
		n.button.click(function(){
			clearInterval(autoHandle);					
			bannerShow(n);
			lastAutoPlayIndex = $.BannerGroup.BannerIndex;	
			play($.BannerGroup.Setting.autoplay);
		});
	});
	
	
	play($.BannerGroup.Setting.autoplay);
	
	
	//播放
	function play(speed){
		(function(){
			bannerShow($.BannerGroup.Buttons[lastAutoPlayIndex++]);		  
			if(speed){	//如果设置了播放速度
				clearInterval();
				autoHandle = setInterval(function(){
					if(lastAutoPlayIndex > $.BannerGroup.Setting.banners.length){
						lastAutoPlayIndex = 1;	//超过最大索引值。自动修正为1
					} //end if							  
					bannerShow($.BannerGroup.Buttons[lastAutoPlayIndex++]);
			
				},speed); //end setInterval	
			}//end if
		}());	
	};
	//显示和按钮对应的banner
	function bannerShow(relevantButton){	//显示索引值指定的banner
		if($.BannerGroup.BannerIndex!=0){
				$.BannerGroup.Buttons[$.BannerGroup.BannerIndex].button.css("background", "#000");	//复原上一个按钮的底色
				$.BannerGroup.Banners[$.BannerGroup.BannerIndex].hide();	//隐藏banner
		}//end if
		relevantButton.button.css("background", "#660000");	//当前按钮改变底色
		$.BannerGroup.BannerIndex = relevantButton.index;	//记录索引值
		//$.BannerGroup.Banners[relevantButton.index].parent().fadeIn("slow");
		$.BannerGroup.Banners[relevantButton.index].fadeIn(250);	//显示图片
		
	}// end function bannerShow
	
	function fixButtonPosition(Button, styleRight, styleBottom){
		if($.BannerGroup.Setting.banners.length!=1){	//假如只有一个图片就不显示按钮
			Button.button.css("right", styleRight);
			Button.button.css("bottom", styleBottom);
		}else{	
			Button.button.hide();
		};//end if
	}// end function fixButtonPosition
};
}(jQuery));//end 可在范围内直接用$替代关键字jQuery
//图片向左滚动
function ScrollImgLeft(){
var speed=20
var scroll_begin = document.getElementById("scroll_begin");
var scroll_end = document.getElementById("scroll_end");
var scroll_div = document.getElementById("scroll_div");
scroll_end.innerHTML=scroll_begin.innerHTML
  function Marquee(){
	  //alert(scroll_end.offsetWidth+":"+scroll_div.scrollLeft)
    if(scroll_div.scrollLeft>500)
	{
      scroll_div.scrollLeft-=scroll_begin.offsetWidth;
	}
    else
      scroll_div.scrollLeft++
  }
var MyMar=setInterval(Marquee,speed)
  scroll_div.onmouseover=function() {clearInterval(MyMar)}
  scroll_div.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
}

//公告向上滚动
function txtTopScroll(){
var lis = document.getElementById('demo1').getElementsByTagName('li');
if(lis.length <= 12){return;}
var speed=30 //值越大速度越慢
var demo = document.getElementById("demo");
var demo1 = document.getElementById("demo1");
var demo2 = document.getElementById("demo2");
demo2.innerHTML=demo1.innerHTML //克隆demo1为demo2 
function Marquee(){ 
//alert(demo.scrollTop+":"+demo2.scrollTop)
//向上滚动
if(demo2.offsetTop-demo.scrollTop<=0) //当滚动至demo1与demo2交界时
demo.scrollTop-=demo1.offsetHeight //demo跳到最顶端 
else{ 
demo.scrollTop++ 
} 
} 
var MyMar=setInterval(Marquee,speed)//设置定时器 
demo.onmouseover=function() {clearInterval(MyMar)} 
demo.onmouseout=function(){MyMar=setInterval(Marquee,speed)} 
}

//图片Flash
function swfb(src,w,h,flashvars){
	html = '';
	html += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'+w+'" height="'+h+'" id="main">';
	html += '<param name="allowScriptAccess" value="sameDomain" />';
	html += '<param name="movie" value="'+src+'" />';
	html += '<param name="quality" value="high" />';
	html += '<param name="wmode" value="transparent" />';
	html += '<param name="FlashVars" value="'+flashvars+'" />';
	html += '<embed wmode="transparent" src="'+src+'" quality="high" bgcolor="#cc6600" width="'+w+'" height="'+h+'" name="main" align="center" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" FlashVars="'+flashvars+'" />';
	html += '<\/object>';
	document.write(html);
}

