﻿(function(){$.fn.rollpic=function(o,conatin,items,prev,next,nub,mab){var o = $.extend({pause:5000,nspd:1000,uspd:300,vnum:nub,snum:mab,start:0,isH:true,auto:true}, o||{});return this.each(function(){var $cont=$("."+conatin+"",this),$prev=$("."+prev+"",this),$next=$("."+next+"",this), $Item=$cont.children(""+items+""),len=$Item.length, v=o.vnum;if(len<v){return false;} $cont.prepend($Item.slice(len-v-1+1).clone(true)).append($Item.slice(0,v).clone(true));o.start+=v;var cuur=o.start;var interval=null,a_dir=o.isH ? "marginLeft" : "marginTop",aSize=o.isH ? $Item.outerWidth(true):$Item.outerHeight(true),contentDs=o.isH ? "width":"height", itemLength=$cont.children(""+items+"").size(); $cont.css(contentDs,itemLength*aSize).css(a_dir,-(cuur*aSize));var isOver=true;if(o.auto){ $cont.hover(function(){clearInterval(interval);},function(){ interval=setInterval(function(){roll(cuur+o.snum)},o.pause);}); };if($prev){$prev.click(function(){if(o.auto){clearInterval(interval);};if(isOver==true){roll(cuur-o.snum),o.uspd};if(o.auto){interval=setInterval(function(){roll(cuur-o.snum)},o.pause);}; });};if($next){$next.click(function(){if(o.auto){clearInterval(interval);};if(isOver== true){roll(cuur+o.snum),o.uspd};if(o.auto){interval=setInterval(function(){roll(cuur+o.snum)},o.pause);}}); };if(o.auto){ interval = setInterval(function(){ roll(cuur+o.snum)}, o.pause);} function roll(to,spd){if(isOver){var spd=spd ||o.nspd; isOver=false;if(to<o.start-v-1){$cont.css(a_dir,-((v+(len-v)+cuur)*aSize)+"px");cuur=(v+(len-v)+cuur)-o.snum; }else if(to>=itemLength-v+1){ $cont.css(a_dir,-((v-(itemLength-v-cuur))*aSize));cuur=(v-(itemLength-v-cuur))+o.snum;} else cuur=to;$cont.animate(a_dir=="marginLeft" ? {"marginLeft":-(cuur*aSize)} :{"marginTop":-(cuur*aSize)},spd, function(){isOver=true;} );   };return false; };  }); }})(jQuery);
