(function($) {

/*
	jQuery 幻灯片广告
	2010.04.14 蔡嘉亮 
*/

$.fn.slideView = function(options){
		
		var defaults = {
			slideSpeed:5000,
			animateSpeed:200,
			autoPlay:true,
			animate:true,
			Random:true,
			hiddenTab:false,
			imgWidth:220,
			imgHeight:160
		}
		
		var opts = $.extend(defaults, options);
		return this.each(function(){
			var $obj = $(this);
			var current = 0;
			var imgWidth = opts.imgWidth;
			var imgHeight = opts.imgHeight;
			var liSize = $obj.find("p").size();
			$obj.removeClass().addClass("slideView");
			$obj.css({width:imgWidth, height:imgHeight});
			
			//定义图片层
			$obj.find("p").wrapAll("<div class=\"slideMain\"></div>");
			var $dd = $obj.find("div[class=slideMain]");
			$dd.css({width:imgWidth * (liSize +1)});
			
			//定义按钮
			$obj.append("<div class=\"slideTab\" style=\"filter:Alpha(opacity=60);-moz-opacity:0.6;opacity: 0.6;\"></div>");
			var $dt = $obj.find("div[class=slideTab]");
			if(opts.hiddenTab)
				$dt.css({display:"none"});

			$dd.find("p").each(function(i){
				$dt.append("<a href=#>" + (i + 1) + "</a> ");
			});	
			
			if(opts.Random)
				current = Math.round(Math.random() * liSize - 1); 

			$dt.find("a").each(function(i){
				$(this).click(function(){
					var cnt = - ( imgWidth * i);
					if(opts.animate)
						$dd.animate({left: cnt}, opts.animateSpeed);
					else
						$dd.find("p").css("display","none").eq(i).css("display","block");
					$dt.find("a").removeClass("current").eq(i).addClass("current");
					current = i;

				});
			});
			
			$dt.find("a").eq(current).trigger("click");
			var animate = function(){
					$dt.find("a").eq(current).trigger("click");
					if(current == liSize)
						current = 0;
					else
						current ++;
			}	

			var timerID;
			var autoPlay = function(){
					timerID = window.setInterval(animate, opts.slideSpeed);
			}
			var autoStop = function(){
					window.clearInterval(timerID);
			}
			$obj.hover(autoStop,autoPlay).mouseout();
				
			//alert($obj.html());
		});
};

/*
切换广告(置顶BANNER,品牌企业BANNER)

*/
$.fn.toggleView = function(options){
	var defaults = {
		toggleSpeed:20000,   //间隔
		Random:true     	//是否随机显示
	}
	var opts = $.extend(defaults, options);
	return this.each(function(){
		var $obj = $(this);
		var liArray = $obj.find("p");
		var liSize = liArray.size();
		if(opts.Random){
			var isOrderAd = function(id){
				if(id == 0)
					return false;
				else
					return true;
			}
			
			//随机
			liArray.each(function(i){
				var targetNum = Math.round(Math.random() * liArray.length - 1);
				var currentId = liArray.eq(i).attr("id");
				var targetId = liArray.eq(targetNum).attr("id");
				if(!isOrderAd(currentId) && !isOrderAd(targetId)){
					var temp = liArray.eq(targetNum).html();
					liArray.eq(targetNum).html(liArray.eq(i).html());
					liArray.eq(i).html(temp);
				}
			});
		}
		var timerID;
		$obj.find("p").css({display:"none"});
		$obj.find("p:lt(2)").css({display:"block"});
		var toggle = function(){
			for(i = 0; i < 1; i++){
				$obj.find("p:first").appendTo($obj);	
			}
			$obj.find("p").css({display:"none"});
			$obj.find("p:lt(2)").css({display:"block"});
		};
			
		if(liArray.size()>2){
			var autoPlay = function(){
				timerID = window.setInterval(toggle, 10000);
			}
			var autoStop = function(){
				window.clearInterval(timerID);
			}
		}
		$obj.hover(autoStop,autoPlay).mouseout();
	});
}

/*
	jQuery 飘动广告
	2010.04.15 蔡嘉亮 
*/

$.fn.floatView = function(options){
	var defaults = {
		step  : 2,
		delay : 80
	}
	var opts = $.extend(defaults, options);
	return this.each(function(){
		 var $obj = $(this);
		 var step = opts.step;
		 
		 $obj
		 .prepend("<span>×</span>")
		 .css({
			position: "absolute"
		 })
		 .find("span")
		 .click(function(){
			$obj.remove();	
			autoStop();
		 })
		 .css({
			position: "absolute",
			top: "-1.2em",
			cursor:"pointer",
			background:"#eeeeee",
			right:0,
			display:"none"
		 })
		 
		 //对象宽度
		 var objWidth = $obj.width();
		 //对象高度
		 var objHeight = $obj.height();
		 //滚动条到网页最顶端的距离
		 var scrollTop = $(window).scrollTop();
		 //屏幕宽度
		 var windowWidth = $(window).width();
		 //屏幕高度
		 var windowHeight = $(window).height();
		 //初始化随机X坐标
		 var xPos = Math.round(Math.random() * windowWidth - objWidth);
		 //初始化随机Y坐标
		 var yPos = Math.round(Math.random() * windowHeight - objHeight);
		 //初始化随机上下方向
		 var downward = Math.round(Math.random()); //1向下 0向上
		 //初始化随机左右方向
		 var rightward =Math.round(Math.random()); // 1向右 0向左
 
		 //下一个X坐标 
		 var nextXpos = function(xPos){
			if( xPos < 0 )
				rightward = 1;
			if(xPos > (windowWidth - objWidth - 8))
				rightward = 0;
			if(rightward){
				xPos = xPos + step;
			}
			else{
				xPos = xPos - step;
			}
			return xPos;
		}	 
		
		//下一个Y坐标
		var nextYpos = function(yPos){
			if(yPos < 0)
				downward = 1;
			if(yPos > (windowHeight - objHeight - 8))
			 	downward = 0;
			if(downward){
				yPos = yPos + step;		
			}
			else{
				yPos = yPos - step;	
			}
			return yPos;
		}
		 
		 var float = function(){
				$obj.css({
					left: xPos,
					top: yPos + $(window).scrollTop()
				}
				);
				xPos = nextXpos(xPos); 
				yPos = nextYpos(yPos); 
		 }
		var  timerID;
		var autoPlay = function(){
			timerID = window.setInterval(float, opts.delay);
			$obj.find("span").css({display:"none"});
		}
		var autoStop = function(){
			window.clearInterval(timerID);
			$obj.find("span").css({display:"block"});
		}
		$obj.hover(autoStop,autoPlay).mouseout();
	});	 		
};

/*
悬浮广告
*/ 
	$.fn.suspendView = function(options){
		var defaults = {
			left:false,
			top:0
		}
		var opts = $.extend(defaults, options);
		return this.each(function(){			  
			var $obj = $(this);
			$obj
			.prepend("<span>×</span>")
			.css({
				top: opts.top,
				position: "absolute"
			})
			.find("span")
			.css({
				position: "absolute",
				top: "-1.2em",
				background:"#eeeeee",
				cursor:"pointer",
				right:0,
				display:"none"
			})
			.click(function(){
				$obj.remove();		 
			});
			
			if(opts.left)
				$obj.css({left:0});
			else
				$obj.css({right:0});
				
				
			$obj.hover(
			function(){
				$obj.find("span").css({display:"block"});
			},
			function(){
				$obj.find("span").css({display:"none"});
			}).mouseout();
			
			$(window).scroll(function(){
				$obj.css({
					top: Number(opts.top) + $(window).scrollTop()
				}
				);	
			})				  
	    });	
		
	}		

	/*文字滚动*/ 
	 $.fn.textSlider = function(options){    
        var defaults = {
        	line:5,
			speed:1000,
			timer:10000
    	};
		var opts = $.extend(defaults, options);
		return this.each(function() {				 
			var $obj = $(this);
			var timerID 
			var $p = $obj.find("p");
			var pHeight = $p.height();
			$p.wrapAll("<div class=\"testSlider\"></div>");
			var $div = $obj.find("div[class=testSlider]");
			$obj.css({
					overflow:"hidden" ,
					height: pHeight * opts.line
			 });
			$div.css({marginTop:0});
			var upHeight = 0-pHeight * opts.line;
		    var scrollUp = function(){
				$div.animate({marginTop:upHeight},opts.speed,function(){
					for(i=0;i<opts.line;i++){
						 $div.find("p:first").appendTo($div);
					}
					$div.css({marginTop:0});
				});	
				/*
				$div.css({marginTop:upHeight});
				for(i=0;i<opts.line;i++){
					 $div.find("p:first").appendTo($div);
                }
				$div.css({marginTop:0});
				*/
			};
			if($p.size()>=opts.line){
				var autoPlay = function(){
					timerID = window.setInterval(scrollUp, opts.timer);
				}
				var autoStop = function(){
					window.clearInterval(timerID);
				}
			}
			$div.hover(autoStop,autoPlay).mouseout();
    	});
    }


	/*图片切换2*/ 
	 $.fn.toggleView2 = function(options){    
        var defaults = {
			rowNumber:4, //每次切换个数
  			amount:12,	 //广告数量大于这个数才会切换
			timer:20000
    	};
		var opts = $.extend(defaults, options);
		return this.each(function() {		
			var $obj = $(this);
			var timerID ;
			var $p = $obj.find("p");
			var toggle = function(){
				for(i = 0; i < opts.rowNumber; i++){
					$obj.find("p:first").appendTo($obj);	
				}	
			};
			
			if($p.size()>opts.amount){
				var autoPlay = function(){
					timerID = window.setInterval(toggle, opts.timer);
				}
				var autoStop = function(){
					window.clearInterval(timerID);
				}
			}
			$obj.hover(autoStop,autoPlay).mouseout();

    	});
    }
})(jQuery);