//	jquery.ceSlider v0.3
(function($){$.fn.ceSlider=function(options){var params=$.extend({},defaultParams,options);return $(this).each(function(){var pluginTarget=this;var items=$(this).children();var obj=$(this);if(typeof(params.html)==='string'){$(this).append(params.html);}else if($.isArray(params.html)){$(this).append(params.html.join(''));};var itemWidth=$(items[0]).outerWidth(true);var itemMargin=$(items[0]).outerWidth(true)-$(items[0]).outerWidth(false);var sliderWidth=itemWidth*items.length;var $slider=$(this).find('.jqSlider-slider');var $hider=$(this).find('.jqSlider-hider');var $next=$(this).find('.jqSlider-next');var $prev=$(this).find('.jqSlider-prev');if(params.step>params.show||typeof(params.step)==='undefined'){params.step=params.show;};if(params.step>items.length-params.show){params.step=items.length-params.show;};if(params.show>items.length){var totalLength=itemWidth*items.length;}else{var totalLength=itemWidth*params.show;};$slider.append(items).css({'width':sliderWidth+'px','position':'relative','left':'0px'});$hider.css({'width':(totalLength-itemMargin)+'px','overflow':'hidden','position':'relative'});var aniSpeed=function(){if(params.relativeSpeed){return((itemWidth/100)*params.relativeSpeed*params.step);}else if(params.itemSpeed){return params.itemSpeed*params.step;}else{return params.speed;};};$next.html(params.nextText).click(function(){var obj=this;if(!$($slider).is(':animated')){if(($hider.width()+itemMargin)-parseInt($slider.css('left').replace('px',''))<$slider.width()){$.event.trigger({'type':'jqSlider-moving-next','obj':pluginTarget});var distance=itemWidth*params.step,moveSpeed=aniSpeed();if(params.continuous===false){var distanceLeft=(($slider.width()-$hider.width())+parseInt($slider.css('left').replace('px',''))-itemMargin);if(distanceLeft<distance){moveSpeed=(moveSpeed*(distanceLeft/distance));distance=distanceLeft;};};$slider.animate({left:'-='+distance},moveSpeed,params.easing,function(){$.event.trigger({'type':'jqSlider-moved-next','obj':pluginTarget});$.event.trigger({'type':'jqSlider-move-complete','obj':pluginTarget});});};};});$prev.html(params.prevText).click(function(){if(!$($slider).is(':animated')){if(parseInt($slider.css('left').replace('px',''))<0){$.event.trigger({'type':'jqSlider-moving-previous','obj':pluginTarget});var distance=itemWidth*params.step,moveSpeed=aniSpeed();if(params.continuous===false){if(parseInt($slider.css('left').replace('px',''))+distance>0){var overBy=parseInt(($slider.css('left').replace('px','')))+distance;moveSpeed=moveSpeed*((distance-(parseInt(($slider.css('left').replace('px','')))+distance))/distance);distance=distance-(parseInt($slider.css('left').replace('px',''))+distance);};};$slider.animate({left:'+='+distance},moveSpeed,params.easing,function(){$.event.trigger({'type':'jqSlider-moved-previous','obj':pluginTarget});$.event.trigger({'type':'jqSlider-move-complete','obj':pluginTarget});});};};});$slider.bind('jqSlider-move-complete',function(event){if(event.obj===pluginTarget){var offset=$slider.width()-$hider.width()-itemMargin;if(parseInt($slider.css('left').replace('px',''))===0){$.event.trigger({'type':'jqSlider-at-start','obj':pluginTarget});};if(parseInt($slider.css('left').replace('px',''))===parseInt('-'+($slider.width()-$hider.width()-itemMargin))){$.event.trigger({'type':'jqSlider-at-end','obj':pluginTarget});};};});if(params.autoScroll===true){params.autoScrollTarget=$next;if(params.continuous===false){$slider.bind('jqSlider-at-end',function(event){if(event.obj===pluginTarget){params.autoScrollTarget=$prev;};}).bind('jqSlider-at-start',function(event){if(event.obj===pluginTarget){params.autoScrollTarget=$next;};});};var timer;function startTimer(){timer=setTimeout(function(){params.autoScrollTarget.click();startTimer();},params.autoTimer);};$slider.hover(function(){clearTimeout(timer);},function(){startTimer();});startTimer();};if(params.continuous===true){$(this).bind('jqSlider-moved-next',function(event){if(event.obj===pluginTarget){for(i=1;i<=params.step;i++){$slider.children().first().insertAfter($slider.children().last());};};$slider.css('left','0px');});};});};var defaultParams={show:3,step:1,autoScroll:false,autoTimer:1000,continuous:false,speed:500,itemSpeed:false,relativeSpeed:false,easing:'linear',prevText:'Previous',nextText:'Next',html:['<div class="jqSlider-prev"></div>','<div class="jqSlider-hider">',' <div class="jqSlider-slider clrNM">',' </div>','</div>','<div class="jqSlider-next"></div>',]};})(jQuery)
