(function(){ $.fn.extend({ 'slide':function(options){ var defaults = { "slides":".J_Slide li", 'vectors':".J_Vec li", "auto":true }, opts = $.extend(defaults,options), $this = $(this), $vectors = $(opts.vectors,$this), $slides = $(opts.slides,$this), $active = $slides.filter('.active'), index = $active.index(), width = $active.width(), auto = opts.auto, timer = null, max = $slides.length; if(max === 1) return; function next(i){ return i==max-1 ? 0 : i+1; } function pre(i){ return i==0 ? max-1 : i-1 ; } function slideLeft(){ $slides.eq(next(index)).addClass('next').siblings().removeClass("next"); $slides.eq(index).animate({'left':'-100%'},500,function(){ $(this).removeAttr('style'); $(this).removeClass("active"); }); $slides.eq(next(index)).animate({'left':'0'},500,function(){ $(this).removeAttr('style'); $(this).removeClass('next').addClass('active').siblings().removeClass("active"); }); index= next(index); if($vectors !== null ){ $vectors.eq(index).addClass('on').siblings('li').removeClass('on'); } } function slideRight(){ $slides.eq(pre(index)).addClass('pre').siblings().removeClass("pre"); $slides.eq(index).animate({'left':'100%'},500,function(){ $(this).removeAttr('style'); $(this).removeClass("active"); }); $slides.eq(pre(index)).animate({'left':'0'},500,function(){ $(this).removeAttr('style'); $(this).removeClass('pre').addClass('active').siblings().removeClass("active"); }); index= pre(index); if($vectors !== null ){ $vectors.eq(index).addClass('on').siblings('li').removeClass('on'); } } function slideIndex(curIndex){ if(curIndex>index){ $slides.eq(curIndex).addClass('next').siblings().removeClass("next"); $slides.eq(index).animate({'left':'-100%'},500,function(){ $(this).removeAttr('style'); $(this).removeClass("active"); }); $slides.eq(curIndex).animate({'left':'0'},500,function(){ $(this).removeAttr('style'); $(this).removeClass('next').addClass('active').siblings().removeClass("active"); }); }else if(curIndexindex){ $slides.eq(curIndex).addClass('next').siblings().removeClass("next"); $slides.eq(index).animate({'left':'-100%'},500,function(){ $(this).removeAttr('style'); $(this).removeClass("active"); }); $slides.eq(curIndex).animate({'left':'0'},500,function(){ $(this).removeAttr('style'); $(this).removeClass('next').addClass('active').siblings().removeClass("active"); }); }else if(curIndex