$(function() { 'use strict'; // 해상도 분기점 전역변수 var $resolution_pc = 1200; var $resolution_tablet = 992; var $resolution_mobile = 768; // 초기화 main_hero_init(); latest_article_init(); partner_banner_init(); navigation_init(); parallax_init(); navi_init(); objectFitImages(); // 스크롤 이벤트 $(window).on('scroll', function() { header_scroll(); footer_init(); subhero_scroll(); }).scroll(); // IE 패럴랙스 스크롤 렉 방지 if ( navigator.userAgent.match(/Trident\/7\./) ) { $('body').on('mousewheel', function() { event.preventDefault(); var wheelDelta = event.wheelDelta; var currentScrollPosition = window.pageYOffset; window.scrollTo(0, currentScrollPosition - wheelDelta); }); } // 메인 롤링이미지 function main_hero_init() { if ( $('.main-hero-section').length ) { var $interval = ( $('.main-hero-section').data('interval') ) ? $('.main-hero-section').data('interval') : 4000; $('.main-hero-section .hero-slider').slick({ autoplay: true, autoplaySpeed: $interval, speed: 600, arrows: true, dots: true, lazyLoad: 'ondemand', prevArrow: $('.main-hero-section .slick-arrows .btn-prev'), nextArrow: $('.main-hero-section .slick-arrows .btn-next') }); } } // 상단 내비게이션 초기화 /* function navigation_init() { var $header = $('#header'); var $openBtn = $header.find('.btn-open-nav'); var $closeBtn = $header.find('.btn-close-nav'); var $navDimmed = $header.find('.nav-dimmed'); var $maxHeight = 0; var $bg = $header.find('.subnav-bg'); $header.find('.gnb > li').each(function () { if ($(this).find('.subnav').length) $(this).addClass('has-child-menu'); }); function nav_open() { $openBtn.attr('aria-expanded', 'true'); $navDimmed.stop().fadeIn(350); } function nav_close() { $openBtn.attr('aria-expanded', 'false'); $navDimmed.stop().fadeOut(350); } $openBtn.on('click', function () { nav_open(); }); $closeBtn.on('click', function () { nav_close(); }); $navDimmed.on('click', function () { nav_close(); }); $header.find('.gnb > li > a').on('mouseenter', function () { if ($(window).width() >= $resolution_tablet) { $maxHeight = 0; $header.addClass('is-active'); $header.find('.gnb > li').each(function () { if ($(this).find('.subnav').outerHeight() >= $maxHeight) $maxHeight = $(this).find('.subnav').outerHeight(); }); $header.find('.subnav').stop().slideDown(300); $bg.height($maxHeight).stop().slideDown(300); } }); $header.on('mouseleave', function () { $header.removeClass('is-active'); $header.find('.subnav').stop().slideUp(300); $bg.stop().slideUp(300); }); $header.find('.gnb > li > a').on('click', function (e) { if ($(window).width() < $resolution_tablet) { if ($(this).siblings('.subnav').length) { e.preventDefault(); if (!$(this).parent().hasClass('is-open')) { $header.find('.gnb > li.is-open').removeClass('is-open'); $header.find('.subnav').stop().slideUp(300); $(this).parent().addClass('is-open'); $(this).siblings('.subnav').stop().slideDown(300); } else { $(this).parent().removeClass('is-open'); $(this).siblings('.subnav').stop().slideUp(300); } } } }); } */ $(document).ready(function(){ var $header = $('#header'); var $openBtn = $header.find('.btn-open-nav'); var $closeBtn = $header.find('.btn-close-nav'); var $navDimmed = $header.find('.nav-dimmed'); var $maxHeight = 0; var $bg = $header.find('.subnav-bg'); $header.find('.gnb > li').each(function () { if ($(this).find('.subnav').length) $(this).addClass('has-child-menu'); }); function nav_open() { $openBtn.attr('aria-expanded', 'true'); $navDimmed.stop().fadeIn(350); $('.gnb').stop().fadeIn(650); } function nav_close() { $openBtn.attr('aria-expanded', 'false'); $navDimmed.stop().fadeOut(350); } $openBtn.on('click', function () { nav_open(); }); $closeBtn.on('click', function () { nav_close(); }); $navDimmed.on('click', function () { nav_close(); }); $header.find('.gnb > li > a').on('mouseenter', function () { if ($(window).width() >= $resolution_tablet) { $maxHeight = 0; $header.addClass('is-active'); $header.find('.gnb > li').each(function () { if ($(this).find('.subnav').outerHeight() >= $maxHeight) $maxHeight = $(this).find('.subnav').outerHeight(); }); $header.find('.subnav').stop().slideDown(300); $bg.height($maxHeight).stop().slideDown(300); } }); $header.on('mouseleave', function () { $header.removeClass('is-active'); $header.find('.subnav').stop().slideUp(300); $bg.stop().slideUp(300); }); $header.find('.gnb > li > a').on('click', function (e) { if ($(window).width() < $resolution_tablet) { if ($(this).siblings('.subnav').length) { e.preventDefault(); if (!$(this).parent().hasClass('is-open')) { $header.find('.gnb > li.is-open').removeClass('is-open'); $header.find('.subnav').stop().slideUp(300); $(this).parent().addClass('is-open'); $(this).siblings('.subnav').stop().slideDown(300); } else { $(this).parent().removeClass('is-open'); $(this).siblings('.subnav').stop().slideUp(300); } } } }); }) // 메인 최근게시물 전체보기 버튼 세팅 function latest_article_init() { var $btn = $('.main-latest-section .btn-more'); $btn.attr('href', $('.main-latest-section .tab-pane:eq(0)').data('url')); $('.main-latest-section .tab-article li a').on('click', function() { var $idx = $(this).parent().index(); $btn.attr('href', $('.main-latest-section .tab-pane:eq(' + $idx + ')').data('url')); }); } // 메인 파트너 배너 세팅 function partner_banner_init() { if ( $('.partner-slider').length ) { $('.partner-slider').slick({ autoplay: true, autoplaySpeed: 2000, speed: 600, slidesToShow: 8, slidesToScroll: 1, arrows: true, dots: false, prevArrow: '', nextArrow: '', responsive: [ { breakpoint: 1199, settings: { slidesToShow: 6 } }, { breakpoint: 991, settings: { slidesToShow: 4 } }, { breakpoint: 767, settings: { slidesToShow: 2 } } ] }); } } // 내비게이션 세팅 function navigation_init() { var $header = $('#header'); var $openBtn = $header.find('.btn-nav-open'); var $closeBtn = $header.find('.btn-nav-close'); var $navDimmed = $header.find('.nav-dimmed'); $header.find('.menu-items > li').each(function() { if ( $(this).find('.subnav').length ) $(this).addClass('has-child-menu'); }); function nav_open() { $openBtn.attr('aria-expanded','true'); $navDimmed.stop().fadeIn(350); } function nav_close() { $openBtn.attr('aria-expanded','false'); $navDimmed.stop().fadeOut(350); } $openBtn.on('click', function() { nav_open(); }); $closeBtn.on('click', function() { nav_close(); }); $navDimmed.on('click', function() { nav_close(); }); $header.find('.menu-items > li > a').on('click', function(e) { if ( $(this).siblings('.subnav').length ) { e.preventDefault(); if ( !$(this).parent().hasClass('is-open') ) { $header.find('.menu-items > li.is-open').removeClass('is-open'); $header.find('.subnav').stop().slideUp(300); $(this).parent().addClass('is-open'); $(this).siblings('.subnav').stop().slideDown(300); } else { $(this).parent().removeClass('is-open'); $(this).siblings('.subnav').stop().slideUp(300); } } }); } // sticky 헤더 function header_scroll() { var $header = $('#header'); var $scrTop = $(window).scrollTop(); if ( $scrTop >= $header.outerHeight() ) { if ( !$header.hasClass('sticky') ) $header.addClass('sticky'); } else { $header.removeClass('sticky'); } } // 푸터 세팅 function footer_init() { var $scroll_btn = $('#btn-to-top'); var $header_size = $('#header').outerHeight(); var $footer_pos = $('#footer').offset().top - $(window).height(); var $scrTop = $(window).scrollTop(); if ( $scrTop >= $header_size && $scrTop < $footer_pos ) { $scroll_btn.addClass('show'); } else { $scroll_btn.removeClass('show'); } $scroll_btn.on('click', function() { $('html, body').stop().animate({scrollTop:0}, 600); }); } // 서브페이지 드롭다운 내비게이션 연동 function navi_init() { var $gnb = $('#header .gnb'); var $dropdown = []; var $url = $(location).attr('href'); var $idx_main = 0; var $idx_sub = 0; var $dropdown_html = []; $('.dropdown-nav-section .dropdown-wrap').each(function(i) { $dropdown[i] = $(this); i++; }); $gnb.find('.menu-items').children().each(function() { if ( $url.indexOf($(this).find('>a').attr('href')) > -1 ) { $idx_main = $(this).index(); $(this).addClass('is-active is-open'); $(this).find('.subnav').show(); } $(this).find('.subnav > li').each(function() { if ( $url.indexOf($(this).find('>a').attr('href')) > -1 ) { $idx_main = $(this).closest('.has-child-menu').index(); $idx_sub = $(this).index(); $(this).addClass('is-active'); $(this).closest('.has-child-menu').addClass('is-active is-open'); $(this).parent().show(); } }); }); if ( $('.dropdown-nav-section .dropdown-wrap').length ) { $dropdown_html[0] = ''; $dropdown_html[1] = ''; $gnb.find('.menu-items').children().each(function() { var $link = $(this).find('>a').attr('href'); var $name = $(this).find('>a').text(); $dropdown_html[0] += '