// 접근성 관련 포커스 강제 이동 function accessibilityFocus() { $(document).on('keydown', '[data-focus-prev], [data-focus-next]', function (e) { var next = $(e.target).attr('data-focus-next'), prev = $(e.target).attr('data-focus-prev'), target = next || prev || false; if (!target || e.keyCode != 9) { return; } if ((!e.shiftKey && !!next) || (e.shiftKey && !!prev)) { //setTimeout(function () { $('[data-focus="' + target + '"]').focus(); //}, 0); } }); } function tooltip() { var openBtn = '[data-tooltip]', closeBtn = '.tooltip-close'; function getTarget(t) { if ($(t).is('[data-tooltip]') == true) { return $(t).attr('data-tooltip'); } else if ($(t).is('[data-tooltip]') == false) { return $(t).closest("[data-tooltip]").attr('data-tooltip'); } } function open(t) { var showTarget = $('[data-tooltip-con="' + t + '"]'); showTarget.show().focus(); var popWid = showTarget.width(); var popHei = showTarget.height(); var nLeft = (($(window).outerWidth() - popWid) / 2); var nTop = (($(window).outerHeight() - popHei) / 2); showTarget.css({ "left": "50%", "top": "50%", "transform": "translate(-50%, -50%)" }); showTarget.find('.tooltip-close').data('activeTarget', t); $(".mask").show(); $("body").css("overflow", "hidden"); } function close(t) { var activeTarget = $('[data-tooltip-con="' + t + '"]'); activeTarget.hide(); $('[data-tooltip="' + t + '"]').focus(); $(".mask").hide(); $("body").css("overflow", "inherit"); // 뉴스레터 신청 후 팝업 닫기 버튼 클릭 시 if (t == "apl_after_popup") { close("apl_popup"); } else if (t == "cancel_after_popup") { close("cancel_popup") } } $(document).on('click', openBtn, function (e) { // 팝업 클릭 시 data-tooltip 속성 불러오기 var popName; if ($(this).attr("type", "button") == true) { popName = e.target.dataset.tooltip; } else { popName = e.currentTarget.dataset.tooltip; } e.preventDefault(); open(getTarget(e.target)); /* wrapWindowByMask(popName); */ }).on('click', closeBtn, function (e) { e.preventDefault(); close($(this).data('activeTarget')); }) } $(document).ready(function () { tooltip(); accessibilityFocus(); }) // $(window).resize(function(){ // var showTarget = $('.popup_wrap'); // var popWid = showTarget.width(); // var popHei = showTarget.height(); // var nLeft = (($(window).outerWidth() - popWid)/2); // var nTop = (($(window).outerHeight() - popHei)/2); // showTarget.css({ // "left": nLeft, // "top": nTop // }); // })