(function($) { var banner2013092602eFfect = function(element, options){ var settings = $.extend({}, $.fn.banner2013092602effect.defaults, options); //초반 셋팅값 가져오기 var vars = { currentSlide: 0, oldSlide: 0, totalSlides: 0, randAnim: '', titleAnim: '', running: false, paused: false, stop: false }; var slider = $(element); slider.find('.part').each(function() { vars.totalSlides++; }); //초기셋팅 vars.oldSlide = vars.currentSlide; $(".part", slider).find("img").css({'float':'left','position': 'relative'}); $(".titlepart", slider).find("img").css({'float':'left','position': 'relative'}); $(".part[rel='" + vars.currentSlide + "']", slider).css({'z-index' : '50', 'opacity':1}).find("img").css({ 'left':'0px','top':'0px','width':'100%','height':'100%' }); $(".parttitlebody li[rel='" + vars.currentSlide + "']", slider).addClass("select"); $(".parttitlebody li[rel='" + vars.currentSlide + "']", slider).find("img").css({'left':'-205px'}); var timer = 0; timer = setInterval(function(){ imgeffectRun(slider, settings, false); }, settings.pauseTime); var imgeffectRun = function(slider, settings, nudge){ //Trigger the lastSlide callback vars.runing = true; if(vars && (vars.currentSlide == vars.totalSlides - 1)){ settings.lastSlide.call(this); } if((!vars || vars.stop) && !nudge) return false; settings.beforeChange.call(this); //이전꺼 처리 vars.currentSlide++; if(vars.currentSlide == vars.totalSlides){ vars.currentSlide = 0; vars.startSlide =0; settings.slideshowEnd.call(this); } if(vars.oldSlide == vars.currentSlide){ }else{ $(".parttitlebody li[rel='" + vars.oldSlide + "']", slider).removeClass("select"); $(".parttitlebody li[rel='" + vars.oldSlide + "']", slider).find("img").css({'left':'0px'}); $(".part[rel='" + vars.oldSlide + "']", slider).css({'opacity':'1','z-index':'1'}).animate({'opacity':'0'}, settings.animSpeed); $(".part[rel='" + vars.currentSlide + "']", slider).css({'z-index':'50'}).animate({'opacity':'1'}, settings.animSpeed, '', function(){ vars.runing = false; }); $(".parttitlebody li[rel='" + vars.currentSlide + "']", slider).addClass("select"); $(".parttitlebody li[rel='" + vars.currentSlide + "']", slider).find("img").css({'left':'-205px'}); } vars.oldSlide = vars.currentSlide; } //오버설정 //멈춤기능활성화시기위해서 부분 제거 slider.hover(function(){ vars.paused = true; clearInterval(timer); timer = ''; }, function(){ vars.paused = false; if(timer == '' && !settings.manualAdvance){ timer = setInterval(function(){ imgeffectRun(slider, settings, false); }, settings.pauseTime); } }); $(".titlepart", slider).click(function(){ vars.oldSlide = vars.currentSlide; vars.currentSlide = $(this).parent().attr("rel") -1; imgeffectRun(slider, settings, true); }); $(".Num", slider).click(function(){ vars.oldSlide = vars.currentSlide; vars.currentSlide = $(this).attr("rel") -1; imgeffectRun(slider, settings, true); }); $(".parttitlebody", slider).find("a").trigger('focus').focus(function(){ if(vars.runing == false){ clearInterval(timer); timer = ''; vars.oldSlide = vars.currentSlide; vars.currentSlide = $(this).parent().parent().attr("rel") -1; imgeffectRun(slider, settings, true); } }) $(".parttitlebody", slider).find("a").trigger('focusout').focusout(function(){ if(timer == '' && !settings.manualAdvance){ timer = setInterval(function(){ imgeffectRun(slider, settings, false); }, settings.pauseTime); } }) settings.afterLoad.call(this); return this; }; $.fn.banner2013092602effect = function(options) { //데이터 로딩셋팅 return this.each(function(key, value){ var element = $(this); banner2013092602eFfect($(element), options); $("a:last").focus(); }); }; //Default settings $.fn.banner2013092602effect.defaults = { animSpeed: 1000, //이벤트 속도 pauseTime: 4000, //대기시간 pauseOnHover: true, beforeChange: function(){}, afterChange: function(){}, slideshowEnd: function(){}, lastSlide: function(){}, afterLoad: function(){} }; $.fn._reverse = [].reverse; })(jQuery);