// require jQuery JavaScript Library v1.10.2 (function($) { /* ------------------------------------------------------------ * [ commonlyUsed ] * ------------------------------------------------------------ */ var open = 'global-open'; var close = 'global-close'; var current = 'current'; /* ------------------------------------------------------------ * [ motionConfig ] * ------------------------------------------------------------ */ var animateInterval = 600; var easingFunction = 'easeOutCirc'; // http://easings.net/ja /* ------------------------------------------------------------ * [ toggleMenuPanelUI ] * ------------------------------------------------------------ */ $.fn.toggleMenuPanelUI = function() { return this.each(function() { $(this).on('click', function() { var $this = $(this); var $menu = $('.container-local'); var $closeBtn = $('#global-close-button'); var statusOpen = $menu.hasClass(open); var statusClose = $menu.hasClass(close); if(statusOpen === true){ $menu.slideUp(animateInterval, easingFunction).removeClass(open).addClass(close); } else if(statusClose === true){ $menu.slideDown(animateInterval, easingFunction).removeClass(close).addClass(open); } //when close button clicked. $closeBtn.on('click', function() { $menu.slideUp(animateInterval, easingFunction).removeClass(open).addClass(close); }); }); }); }; /* ------------------------------------------------------------ * [ selectAreaPanelUI ] * ------------------------------------------------------------ */ $.fn.selectAreaPanelUI = function() { return this.each(function() { var $this = $(this); var idName = $(this).find('.btn-switch').attr('id'); var $navGS = $('.nav-global-select'); var $navGD = $('.nav-global-detail'); var $navGSlist = $('.nav-global-select > li'); var $navGDlist = $('.nav-global-detail > li'); $('.btn-switch').removeClass(current); $(this).addClass(current); if(idName == 'area1'){ $('.btn-switch.current').removeClass(current); $this.find('.btn-switch').addClass(current); $navGDlist.removeClass(open).addClass(close); $navGD.find('.area1').removeClass(close).addClass(open); } else if(idName == 'area2'){ $('.btn-switch.current').removeClass(current); $this.find('.btn-switch').addClass(current); $navGDlist.removeClass(open).addClass(close); $navGD.find('.area2').removeClass(close).addClass(open); } else if(idName == 'area3'){ $('.btn-switch.current').removeClass(current); $this.find('.btn-switch').addClass(current); $navGDlist.removeClass(open).addClass(close); $navGD.find('.area3').removeClass(close).addClass(open); } else if(idName == 'area4'){ $('.btn-switch.current').removeClass(current); $this.find('.btn-switch').addClass(current); $navGDlist.removeClass(open).addClass(close); $navGD.find('.area4').removeClass(close).addClass(open); } }); }; /* ============================================================ * Attach an event handler function for one or more events to the selected elements. * ============================================================ */ /* ------------------------------------------------------------ * [ searchElement ] * ------------------------------------------------------------ */ $(document).on('focus', '#form-global-wide input[type="search"]', function() { $('#nav-global-header .container-main-search .inner').addClass(current); $('#form-global-wide input[type="search"]').addClass(current); });//End -> live(on) method $(document).on('blur', '#form-global-wide input[type="search"]', function() { $('#nav-global-header .container-main-search .inner').removeClass(current); $('#form-global-wide input[type="search"]').removeClass(current); });//End -> live(on) method /* ------------------------------------------------------------ * [ toggleMenuPanelUIforMobile ] * ------------------------------------------------------------ */ function toggleMenuPanelUIforMobile(){ var $menu = $('#nav-global-header .container-main-search.narrow'); var $closeBtn = $('.js-global-open'); var statusOpen = $menu.hasClass(open); var statusClose = $menu.hasClass(close); if(statusOpen === true){ $menu.slideUp(animateInterval, easingFunction,function(){ $menu.removeClass(open).addClass(close); $('.global-close-mobile').addClass(open); }); } else if(statusClose === true){ $menu.slideDown(animateInterval, easingFunction).removeClass(close).addClass(open); } } $(document).on('click', '.js-global-search2', function() { toggleMenuPanelUIforMobile(); });//End -> live(on) method $(document).on('click', '.global-close-mobile.js-global-open', function() { toggleMenuPanelUIforMobile(); });//End -> live(on) method /* ------------------------------------------------------------ * [ selectAreaPanelUI ] * ------------------------------------------------------------ */ $(document).on('click', '.js-global-switch', function() { $(this).selectAreaPanelUI(); });//End -> live(on) method $(document).on('click', '.js-global-close', function() { $('.container-local').removeClass(open).addClass(close); });//End -> live(on) method })(jQuery);