(function($) {
	$.fn.jhyChange = function(options){
		var defaults = {	
			speed: 			   800,
			vertical:		   false,
			leftScrollId:      'leftScrollBtn',  //xiaqiankun
			leftScrollText:   'leftScroll', 
			rightScrollId:    'rightScrollBtn',
			rightScrollText: 'rightScroll',
			imgScroll:         false,
			scrollListClass:      'scrollList',
			scrollContentId:'scrollContent',
			scrollImgwidth: 80,
			scrollNum:6
		}; 
		
		var options = $.extend(defaults, options);  
		
		this.each(function() {
			$(this).children().wrap('<li></li>');
			$(this).html('<ul class="'+options.scrollListClass+'">'+$(this).html()+'</ul>');
			var scrollhtml = '';
			var obj = $(this).children('ul'); 
			var s = $("li", obj).length;
			var w = $("li", obj).width(); 
			var h = $("li", obj).height(); 
			var siw = options.scrollImgwidth*s;
			var sw = options.scrollNum*options.scrollImgwidth;
			var ts = s-1;
			var t = 0;
			var sn = 0;
			obj.width(siw); 
			obj.height(h); 
			$(this).css("overflow","hidden");
			
			scrollhtml += '<span id="'+options.leftScrollId+'"><a href=\"javascript:void(0);\" title="'+ options.leftScrollText +'">'+options.leftScrollText+'</a></span>';
			scrollhtml += '<span id="'+options.rightScrollId+'"><a href=\"javascript:void(0);\" title="'+ options.rightScrollText +'">'+options.rightScrollText+'</a></span>';
			$(this).after(scrollhtml);
			
			$("a","#"+options.leftScrollId).click(function(){		
				scrollImg("leftScroll");
			});
			
			$("a","#"+options.rightScrollId).click(function(){		
				scrollImg("rightScroll");
			});
			
			function adjust(){
				if(t>ts) t=0;		
				if(t<0) t=ts;	
				if(!options.vertical) {
					$("ul.show",obj).css("margin-left",(t*w*-1));
				} else {
					$("ul.show",obj).css("margin-left",(t*h*-1));
				}
				clickable = true;
				if(options.numeric) setCurrent(t);
			};
			
			function scrollImg(dir){
				var imgList=obj;
				var osn=sn;
				switch(dir){
					case "leftScroll":
						if(osn<0){
							//$("ul.scrollList",scrollCont ).css({"margin-left":osn+sw});
							sn+=sw;
						}
						break;
					case "rightScroll":
						if(osn-(siw*-1)>sw){
							//$("ul.scrollList",scrollCont ).css({"margin-left":osn-sw});
							sn-=sw;
						}
						break;
					default:
						
						break;
				}
				var diff = Math.abs(sw);
				var speed = options.speed;
				if(!options.vertical) {
					$(obj).animate(
						{ marginLeft: sn }, 
						{ queue:false, duration:speed, complete:adjust }
					);			
				} else {
					p = (t*h*-1);
					$(obj).animate(
						{ marginTop: sn }, 
						{ queue:false, duration:speed, complete:adjust }
					);					
				};
				
			}
			
			
			
		});
	};
})(jQuery);
