$(document).ready(function(){
// visual
var visual = (function(){
var $container = $( '#container' ),
$target = $('.ul_visual li'),
$pos = $('.area_visual .ul_pos'),
$btn = $('.ul_play'),
$btnprev = $('.ul_arrow .li_prev'),
$btnnext = $('.ul_arrow .li_next'),
$btnplay = $('.ul_play li'),
$btnstart = $('.ul_play .li_start a'),
$btnstop = $('.ul_play .li_stop a'),
$size = $target.size(),
$margin = ((18 * ($size - 1)) / 2) * -1,
$visualtxt = $('.ul_visual li .txt'),
$cur = 0,
$old = 0,
$concur = 0,
$conold = 0,
$range = 100,
$interval = 5000,
$flag = true,
$flag_global = true,
// 2014-06-05 수정 start
$dulation = 1200,
$dulation1 = 1400,
$dulation2 = 1800,
$delay1 = 100,
$delay2 = 300,
$delay3 = 500,
$delay4 = 800,
$easing1 = 'easeoutquad',
$easing2 = 'easeinquad',
$arrtxt1 = [17,20,21,15,10],
$arrtxt2 = [41,42.5,35.5,43.5,25.5],
$arrimg1 = [0,96,-26,6,6],
$arrimg2 = [96,-5,-5,6,6],
$arrimg1_1 = [0,-70,20,-70,-70],
$arrimg2_1 = [0,20,20,-70,0],
// 2014-06-05 수정 end
$window = $( window ).width(),
$mobiltemp = false,
$contarget1 = $('.box_main_content_1'),
$contarget2 = $('.box_main_content_1 > div'),
$consize = $contarget2.size(),
$conmargin = ((18 * ($consize)) / 2) * -1;
// 이미지 갯수대로 추가
for (var i = 0; i < $size; i++){
//$pos.append('
' + i + '');
$target.eq(i).css({ display : 'block' , left : i * 100 + '%'});
}
// 비주얼 텍스트 처음 한번 이동
// 2014-06-05 수정 start
$( window ).one('load',function(){
$target.find('p').not('.img_opa').css({ display : 'block' , opacity :'0' });
if ( $mobiletemp == false ){
$target.eq(0).find('.txt_1').delay($delay1).animate({ opacity : 1 , top : $arrtxt1[0] + 7.5 + '%' },$dulation,$easing1);
$target.eq(0).find('.txt_2').delay($delay2).animate({ opacity : 1 , top : $arrtxt2[0] + 7.5 + '%' },$dulation,$easing1);
$('.area_visual .ul_visual li .img_4').css({ display : 'block' , opacity :'1' });
$('.area_visual .ul_visual li .img_5').css({ display : 'block' , opacity :'1' });
$('.area_visual .ul_visual li .img_6').css({ display : 'block' , opacity :'1' });
} else {
$('.area_visual .ul_visual li .txt_1').css({ display : 'block' , opacity : '1' });
$('.area_visual .ul_visual li .img_4').css({ display : 'none' , opacity :'1' });
$('.area_visual .ul_visual li .img_5').css({ display : 'none' , opacity :'1' });
$('.area_visual .ul_visual li .img_6').css({ display : 'none' , opacity :'1' });
}
});
// 2014-06-05 수정 end
$pos.find('.hid').remove();
$pos.css({ marginleft : $margin });
$pos.find('li').eq($cur).addclass('on');
$btn.css({ marginleft : $margin - 18 });
// 롤링 우로이동
$btnprev.bind('click',function(){
if ($flag == true){
$autorollvisual();
}
rollvisual('prev');
return false;
});
// 롤링 좌로이동
$btnnext.bind('click',function(){
if ($flag == true){
$autorollvisual();
}
rollvisual('next');
return false;
});
// 롤링 정지
$btnstop.bind('click',function(){
clearinterval($rollvisual);
$btnplay.removeclass('on');
$(this).parent().prev().addclass('on');
$flag = false;
return false;
});
// 롤링 시작
$btnstart.bind('click',function(){
$autorollvisual();
$btnplay.removeclass('on');
$(this).parent().next().addclass('on');
$flag = true;
return false;
});
// dot 클릭
$(document).on('click','.ul_pos li:not(.on) a',function(){
var $this = $(this),
$index = $this.parent().index();
if ($flag == true){
$autorollvisual();
}
rollvisual($index);
return false;
});
// 스크롤시 텍스트
$( window ).bind('scroll',function(){
var $toptarget = $('.area_header'),
$scrolltop = $( window ).scrolltop(),
$mrgtop = 0,
$opa = 0,
$easing1 = 'easeoutquad',
$easing2 = 'easeinquad',
$winwidth = $( window ).width(),
$top = $( window ).scrolltop();
$mrgtop = ($scrolltop / 350) * -80;
$opa = 1 - ($scrolltop / 350);
if ( $scrolltop < 350 ) {
$visualtxt.stop().animate({ margintop : $mrgtop , 'opacity' : $opa },300,$easing1);
}
if ( $winwidth > 560 ){
if ( $top > 350 ) {
$toptarget.stop().animate({ top : '-36px' },300,$easing2);
} else {
$toptarget.stop().animate({ top : '0' },300,$easing1);
}
};
});
function rollvisual(direc){
$old = $cur;
if ( direc == 'prev' ){
$cur--;
$range = 100;
} else if ( direc == 'next' ){
$cur++;
$range = -100;
} else {
$cur = direc;
}
if ( $cur < 0 ) {
$cur = $size - 1;
} else if ( $cur > $size - 1 ) {
$cur = 0;
}
$pos.find('li').eq($old).removeclass('on');
$pos.find('li').eq($cur).addclass('on');
$target.eq($old).stop().animate({ left : $range + '%' },400,$easing2,function(){
txtani($old,$arrtxt1[$old],$arrtxt2[$old],$arrimg1[$old],$arrimg2[$old],'off');
});
$target.eq($cur).find('.txt_1').css('opacity','0');
if ( $mobiletemp == false ){
$target.eq($cur).find('.txt_2').css('opacity','0');
}
$target.eq($cur).css({ left : (-1 * $range) + '%' }).stop().animate({ left : '0' },400,$easing1,function(){
txtani($cur,$arrtxt1[$cur],$arrtxt2[$cur],$arrimg1[$cur],$arrimg2[$old],'on');
});
}
// 비주얼 자동 롤링
var $rollvisual = setinterval(function(){
rollvisual('next');
},$interval);
function $autorollvisual() {
clearinterval($rollvisual);
$rollvisual = setinterval(function(){
rollvisual('next');
},$interval);
}
// 텍스트 애니
// 2014-06-05 수정 start
function txtani(idx,top1,top2,top3,top4,sta){
switch (sta){
case 'on':
$target.eq(idx).find('.txt_1').stop().delay($delay1).animate({ opacity : 1 , top : top1 + 7.5 + '%'},$dulation,$easing1);
if ( $mobiletemp == false ){
$target.eq(idx).find('.txt_2').stop().delay($delay2).animate({ opacity : 1 , top : top2 + 7.5 + '%' },$dulation,$easing1);
$target.eq(idx).find('.img_1').stop().delay($delay3).animate({ opacity : 1 , top : top3 + $arrimg1_1[idx] + '%' },$dulation,$easing2);
if ($target.eq(idx).find('.img_2').length){
$target.eq(idx).find('.img_2').stop().delay($delay4).animate({ opacity : 1 , top : top4 + $arrimg2_1[idx - 1] + '%' },$dulation1,$easing2);
}
if ($target.eq(idx).find('.img_3').length){
$target.eq(idx).find('.img_3').stop().delay($delay3).animate({ opacity : 1 , width : top3 + 27 + '%' },$dulation,$easing1);
}
if ($target.eq(idx).find('.img_5').length){
$target.eq(idx).find('.img_5').stop().delay($delay3).animate({ opacity : 1 , height : '0%' },$dulation2,$easing1);
}
if ($target.eq(idx).find('.img_6').length){
$target.eq(idx).find('.img_6').stop().delay($delay4 + 400).animate({ opacity : 1 , width : top3 + 62 + 'px' },$dulation2,$easing1);
}
}
break;
case 'off':
$target.eq(idx).find('.txt_1').stop().css({ opacity : 0 , top : top1 + '%' });
if ( $mobiletemp == false ){
$target.eq(idx).find('.txt_2').stop().css({ opacity : 0 , top : top2 + '%' });
$target.eq(idx).find('.img_1').stop().css({ opacity : 0 , top : top3 + '%' });
$target.eq(idx).find('.img_1.img_opa').stop().css({ opacity : 1 , top : top3 + '%' });
if ($target.eq(idx).find('.img_2').length){
$target.eq(idx).find('.img_2').stop().css({ opacity : 1 , top : top4 + '%' });
}
if ($target.eq(idx).find('.img_3').length){
$target.eq(idx).find('.img_3').stop().css({ opacity : 0 , width : top3 + '%' });
}
if ($target.eq(idx).find('.img_5').length){
$target.eq(idx).find('.img_5').stop().css({ opacity : 1 , height : '100%' });
}
if ($target.eq(idx).find('.img_6').length){
$target.eq(idx).find('.img_6').stop().css({ opacity : 0 , width : 0 + 'px' });
}
}
break;
}
}
// 2014-06-05 수정 end
// 롤링 모바일 정지
$('.gnb_tit a').bind('click',function(){
var $target = $('.box_mot_1');
if ($target.hasclass('on')){
clearinterval($rollvisual);
} else {
$autorollvisual();
}
});
// 글로벌 네트워크 모바일 위치 이동
changecon($window);
function changecon(size){
var $target = $('.box_main_content_4_2'),
$clone = $target.clone(),
$append = $('.box_sns').next('.box_main_content_4_1');
if ( $window > 465 ){
$mobiletemp = false;
$('.area_visual .ul_visual li p').not('.txt_1').css('display','block');
$('.box_main_content_1 > div').css('left','auto');
$('.img_blank').remove();
} else {
$mobiletemp = true;
$('.area_visual .ul_visual li p').not('.txt_1').css('display','none');
if (!$('.img_blank').length){
$('.area_visual').append('');
}
}
if ( $flag_global == false && $window > 560 ){
$append.next('.box_main_content_4_2').remove();
$target.removeclass('off');
$flag_global = true;
} else if ($flag_global == true && $window < 560 ){
$target.addclass('off');
$append.after($clone);
$flag_global = false;
}
}
// 리사이즈 이벤트
$( window ).bind('resize',function(e){
cleartimeout(resizeevt);
var resizeevt = settimeout(function() {
$window = $( window ).width();
changecon($window);
}, 200);
});
// swipe 설정
if ( 'ontouchstart' in window ) {
// 메인 비주얼
var gesture1 = new ixguesture( jquery('.area_visual')[0], 'horizontal', { onswipe: swipehandler1 } );
gesture1.areawidth( $container.width() );
gesture1.sensitivity( 0.1 );
// 메인 컨텐츠
var gesture2 = new ixguesture( jquery('.box_main_content_1')[0], 'horizontal', { onswipe: swipehandler2 } );
gesture2.areawidth( $container.width() );
gesture2.sensitivity( 0.1 );
}
// 컨텐츠 갯수대로 추가
for (var i = 0; i < $consize; i++){
$('.box_main_content_1 .ul_pos').css( 'margin-left' , $conmargin ).append('' + i + '');
$('.box_main_content_1 .ul_pos li.hid').remove();
if (i == 0 ){
$('.box_main_content_1 .ul_pos li').eq(0).addclass('on');
}
}
// 메인 비주얼 스와이프
function swipehandler1 (e) {
if ($mobiletemp == true) {
switch ( e.swipetype ) {
case 'right' :
if ($flag == true){
$autorollvisual();
}
rollvisual('prev');
break;
case 'left' :
if ($flag == true){
$autorollvisual();
}
rollvisual('next');
break;
}
}
}
// 메인 컨텐츠 스와이프
function swipehandler2 (e) {
if ($mobiletemp == true) {
switch ( e.swipetype ) {
case 'right' :
rollcontent('prev');
break;
case 'left' :
rollcontent('next');
break;
}
}
}
// 메인 컨텐츠 스와이프
function rollcontent(direc) {
$conold = $concur;
switch( direc ){
case 'prev' :
$concur--;
$conrange = 100;
break;
case 'next' :
$concur++;
$conrange = -100;
break;
}
if ( $concur < 0 ) {
$concur = $consize - 1;
} else if ( $concur > $consize - 1 ) {
$concur = 0;
}
$contarget2.eq($conold).stop().animate({ left : $conrange + '%' },400,$easing2);
$contarget2.eq($concur).css({ left : (-1 * $conrange) + '%' }).stop().animate({ left : '0' },400,$easing1);
$('.box_main_content_1 .ul_pos li').eq($conold).removeclass('on');
$('.box_main_content_1 .ul_pos li').eq($concur).addclass('on');
}
}());
// 뉴스보기
var news = (function(){
var $btnprev = $('.ul_nav_1 li.li_prev a'),
$btnnext = $('.ul_nav_1 li.li_next a'),
$cur = 0;
// 총 뉴스 갯수
$('.ul_news').each(function(){
var $this = $(this),
$size = $this.find('li').size(),
$target = $this.siblings('.p_page_1').find('.total');
$target.text($size);
});
// 이전 버튼
$btnprev.bind('click',function(){
$(this).viewnews('left');
return false;
});
// 다음 버튼
$btnnext.bind('click',function(){
$(this).viewnews('right');
return false;
});
// 뉴스 보기
$.fn.viewnews = function(direct){
this.each(function(){
var $this = $(this),
$btnparent = $this.closest('ul'),
$targetparent = $btnparent.siblings('.ul_news'),
$target = $targetparent.find('li'),
$curtxt = $btnparent.siblings('.p_page_1').find('.current'),
$size = $target.size();
switch (direct){
case 'left':
$cur--;
break;
case 'right':
$cur++;
break;
}
if ($cur < 0){
$cur = $size - 1;
} else if ($cur > $size -1 ){
$cur = 0;
}
$curtxt.text($cur + 1);
$target.removeclass('on');
$target.eq($cur).addclass('on');
})
}
}());
});