/* * Name: KEPCO * Part: JavaScript for ui & plug-in * Author : pk.choi */ (function($){ $(document).ready(function() { /* * Part: 통합Main * Function: * */ var isMainWrapOpen = false; var mainWrapH = [659,455,341]; var $wraptop = $('.cont_wrap.top'); var $cont = $wraptop.find('.cont'); var $moreBtn = $cont.find('.btn_more'); var $layerMainWrap = $wraptop.find('.layer_main_wrap'); //더보기 클릭 $wraptop.find('.cont .btn_more').on({ 'click':function (event) { //console.log($(this).parent().index()); $(this).siblings(".layer_main_wrap").find(".round").hide(); if(!$wraptop.is(':animated')){ var index = $(this).parent().index(); $layerMainWrap.css({'height':0, 'visibility':'hidden'}); $moreBtn.css({'height':27, 'visibility':'visible'}); $(this).css({'height':0, 'visibility':'hidden'}); $cont.addClass('off'); $(this).parent().removeClass('off'); if(!isMainWrapOpen){ $(this).next().css({'visibility':'visible'}).animate({'height':mainWrapH[index]}, 600, 'easeInOutSine');//layer_main_wrap $wraptop.animate({'height':265+mainWrapH[index]}, 600, 'easeInOutSine',function(){ isMainWrapOpen = true; $("html, body").animate({'scrollTop':417}, 700, 'easeInOutQuart'); }); }else{ $(this).next().css({'height':mainWrapH[index], 'visibility':'visible'});//layer_main_wrap $wraptop.css('height', 265+mainWrapH[index]); } $(this).next().find('a:first').focus();// 레이어 열릴때 포커스 이동 20150304 민승우 } return false; } }); //닫기 클릭 $wraptop.find('.layer_main_wrap .btn_layer_close').on({ 'click':function (event) { //var index = $(this).parent().parent().index(); 2015-05-04 오대영 수정 parent가 box마다 다름 var index = $(this).attr("href"); var index = index.replace("#",""); //alert(index); $(this).parent().animate({'height':0}, 600, 'easeInOutSine',function(){ $layerMainWrap.css({'visibility':'hidden'}); });//layer_main_wrap $wraptop.animate({'height':264}, 600, 'easeInOutSine'); $cont.removeClass('off'); $moreBtn.css({'height':27, 'visibility':'visible'}); $cont.eq(index).find('.btn_more').focus();// 메뉴 닫힐때 닫기버튼으로 포커스 이동 20150310 민승우 isMainWrapOpen = false; $(this).parent().find(".layer_main_wrap span.round").css("display","block");//오대영추가 return false; } }); //서비스 바로가기 영역 아이콘 메뉴 $('#box1 ul.service_list li a').on({ 'mouseenter focusin':function (event) { $(this).find('>span').animate({'height':63}, 300, 'easeInOutQuint'); } ,'mouseleave focusout':function (event) { $(this).find('>span').animate({'height':0}, 300, 'easeInOutQuint'); } }); //꼭 읽어보세요 영역 슬라이드 배너 var $slide_bg = $('.banner_wrap.slide_area .gallery_list .bg'); var $slide_pagebtn = $('.banner_wrap.slide_area .gallery_list li > a'); var total = $slide_bg.length; var nCurrentIndex = 0; initSlide(); $('.banner_wrap.slide_area .arr_left').on({ 'click':function (event) { startPlayPrev(); return false; } }); $('.banner_wrap.slide_area .arr_right').on({ 'click':function (event) { startPlayNext(); return false; } }); $slide_pagebtn.on({ 'click':function (event) { //console.log($(this).parent().index()); if(nCurrentIndex < $(this).parent().index()) showBannerAt($(this).parent().index(), 1, 700); else showBannerAt($(this).parent().index(), -1, 700); return false; } ,'keydown':function (event) { if(event.keyCode == '9' || event.keyCode == '13') { //console.log($(this).parent().index()); if(nCurrentIndex < $(this).parent().index()) showBannerAt($(this).parent().index(), 1, 700, 'static'); else showBannerAt($(this).parent().index(), -1, 700, 'static'); } } }); //슬라이드 초기화 function initSlide(){ var getPageBtnWidth = function(){ var w = 0; $slide_pagebtn.each(function(index, element){ w += index*15; }); return w; } var pageBtnsWidth = 490 - getPageBtnWidth()/2; //첫번째 슬라이드 이미지 활성화 $slide_bg.not(':eq(0)').css('left',980); //해당페이지 버튼 활성화 $slide_pagebtn.eq(nCurrentIndex).parent().addClass('on'); //페이지 버튼 포지션 센터정렬 $slide_pagebtn.each(function(index, element){ $(this).css({'left':pageBtnsWidth+(index*15)}); }); if(total < 2) $slide_pagebtn.remove(); } //이전 배너 설정 function startPlayPrev(){ if(total <= 1) return; if(nCurrentIndex - 1 < 0) showBannerAt(total-1, -1, 700); else showBannerAt(nCurrentIndex-1, -1, 700); } //다음 배너 설정 function startPlayNext(){ if(total <= 1) return; if(nCurrentIndex >= total - 1) showBannerAt(0, 1, 700); else showBannerAt(nCurrentIndex+1, 1, 700); } // nIndex에 해당하는 비주얼을 활성화시킴. function showBannerAt(nIndex, dir, speed, state){ if(nIndex == nCurrentIndex) return; if(!$slide_bg.is(':animated')){ //썸네일 활성화 $slide_pagebtn.parent().removeClass('on'); $slide_pagebtn.eq(nIndex).parent().addClass('on'); //이전비주얼 비활성화/현재비주얼 활성화 if(state == 'static'){ $slide_bg.eq(nCurrentIndex).css({'left':-980*dir}); $slide_bg.eq(nIndex).css({'left':0}); }else{ $slide_bg.eq(nCurrentIndex).stop(true, false).animate({'left':-980*dir}, speed, 'easeInOutQuad'); $slide_bg.eq(nIndex).stop(true, false).css('left',(980*dir)).animate({'left':0}, speed, 'easeInOutQuad'); } // 현재비주얼 index값을 업데이트 시켜준다. nCurrentIndex = nIndex; } } //공지사항 var $noticeTabBtn = $('.notice_wrap .tit_list h2 a'); var $noticeBox = $('.notice_wrap .notice_box'); $noticeTabBtn.on({ 'click':function (event) { var src_off; var src_on; var indexNow = $(this).parents("h2").index(); $noticeBox.removeClass('on').eq(indexNow).addClass('on'); $noticeTabBtn.each(function() { src_off = $(this).find('img').attr('src').replace('on.png', "off.png"); $(this).find('img').attr('src', src_off); }); src_on = $(this).find('img').attr('src').replace('off.png', "on.png"); $(this).find('img').attr('src', src_on); event.preventDefault(); return false; } }); //SNS var $snsBox = $('.cont.sns_wrap .sns_box'); var $snsCont = $snsBox.find('.sns_cont'); var $snsContOn = $snsBox.find('.sns_cont.on'); var $snsTabBtn = $snsBox.find('h3 a'); $snsTabBtn.on({ 'mouseenter':function (event) { if(!$(this).parent().next().hasClass('on')){ var src_hover = $(this).find('img').attr('src').replace('off.png', "hover.png"); $(this).find('img').attr('src', src_hover); } } ,'mouseleave':function (event) { if(!$(this).parent().next().hasClass('on')){ var src_hover = $(this).find('img').attr('src').replace('hover.png', "off.png"); $(this).find('img').attr('src', src_hover); } } ,'click':function (event) { //console.log($(this).parent().parent().index()); var index = $(this).parent().parent().index(); $snsCont.removeClass('on'); $snsCont.eq(index-1).addClass('on'); var src_off = $snsContOn.prev().find('img').attr('src').replace('on.png', "off.png"); var src_on = $(this).find('img').attr('src').replace('hover.png', "on.png"); $snsContOn.prev().find('img').attr('src', src_off); $(this).find('img').attr('src', src_on); $snsContOn = $snsCont.eq(index-1); return false; } ,'keydown':function (event) { if(event.keyCode == '9' || event.keyCode == '13') { //console.log(event.keyCode); var index = $(this).parent().parent().index(); $snsCont.removeClass('on'); $snsCont.eq(index-1).addClass('on'); var src_off = $snsContOn.prev().find('img').attr('src').replace('on.png', "off.png"); var src_on = $(this).find('img').attr('src').replace('off.png', "on.png"); $snsContOn.prev().find('img').attr('src', src_off); $(this).find('img').attr('src', src_on); $snsContOn = $snsCont.eq(index-1); } } }); });//end : document ready })(jQuery);