jQuery.browser = {}; (function () { jQuery.browser.msie = false; jQuery.browser.version = 0; if (navigator.userAgent.match(/MSIE ([0-9]+)\./)) { jQuery.browser.msie = true; jQuery.browser.version = RegExp.$1; } })(); var cValidator; cValidator = { email : function(str){ var regEmail = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/; return (regEmail.test(str)) ? true : false; }, userid : function(str){ var regUserid = /^[a-z]+[\w-]*[a-z0-9_]+$/i; return (regUserid.test(str)) ? true : false; }, url : function(str){ var regUrl = /^(https?|ftp|mms):\/\/[0-9a-z-]+(\.[_0-9a-z-]+)+(:\d+)?/; return (regUrl.test(str)) ? true : false; }, korean : function(str){ var regKor = new RegExp('^[\uAC00-\uD7A3]*$'); return (regKor.test(str)) ? true : false; }, korean_number : function(str){ var regKorNum = new RegExp('^[\uAC00-\uD7A30-9]*$'); return (regKorNum.test(str)) ? true : false; }, alpha : function(str){ var regAlpha = /^[a-z]*$/i; return (regAlpha.test(str)) ? true : false; }, alpha_number : function(str){ var regAlphaNum = /^[a-z][a-z0-9_]*$/i; return (regAlphaNum.test(str)) ? true : false; }, number : function(str){ var regNum = /^[0-9]*$/; return (regNum.test(str)) ? true : false; }, ssn : function(j1, j2){ var sum = 0; for (i=0; i= 0 || j1.charAt(i) <= 9) { if (i == 0) sum = (i+2) * j1.charAt(i); else sum = sum + (i+2) * j1.charAt(i); }else{ return false; } } for (i=0; i<2; i++) { if (j2.charAt(i) >= 0 || j2.charAt(i) <= 9) sum = sum + (i+8) * j2.charAt(i); else return false; } for(i=2; i<6; i++) { if (j2.charAt(i) >= 0 || j2.charAt(i) <= 9) sum = sum + (i) * j2.charAt(i); else return false; } var checkSUM = sum % 11; if(checkSUM == 0) { var checkCODE = 10; } else if(checkSUM ==1) { var checkCODE = 11; } else { var checkCODE = checkSUM; } var check1 = 11 - checkCODE; if (j2.charAt(6) >= 0 || j2.charAt(6) <= 9) var check2 = parseInt(j2.charAt(6)) else return false; if(check1 != check2) return false; else return true; }, corp_num : function(vencod){ var sum = 0; var getlist =new Array(10); var chkvalue =new Array("1","3","7","1","3","7","1","3","5"); for(var i=0; i<10; i++) getlist[i] = vencod.substring(i, i+1); for(var i=0; i<9; i++) sum += getlist[i]*chkvalue[i]; sum = sum + parseInt((getlist[8]*5)/10); sidliy = sum % 10; sidchk = 0; if(sidliy != 0) sidchk = 10 - sidliy; else sidchk = 0; if(sidchk != getlist[9]) return false; return true; }, max_length : function(txt, len){ var cnt = 0; for(i=0; i 4) cnt += 2; else cnt += 1 ; } return (len <= cnt) ? true : false; } } var com_o={ divfade:function(val, endloop, nextloop){ var setfade; var addon; for (i=1;i<=endloop;i++){ if(i==val){ setfade = document.getElementById("tab_"+i); if(!setfade){ }else{ setfade.style.display=""; $("#addOn_"+i).addClass('on'); } }else{ setfade = document.getElementById("tab_"+i); if(!setfade){ }else{ setfade.style.display="none"; $("#addOn_"+i).removeClass('on') } } } if(nextloop!="") return com_o.sub_divfade(1, nextloop); }, sub_divfade:function(val, endloop){ var setfade; for (i=1;i<=endloop;i++){ if(i==val){ setfade = document.getElementById("subtab_"+i); setfade.style.display=""; }else{ setfade = document.getElementById("subtab_"+i); setfade.style.display="none"; } } }, menuAcsChk:function(href, acs, ltype){ if (acs=="ok"){ if (ltype=="B"){ window.open(href, '_blank'); }else{ location.href=href; } }else if (acs=="no"){ alert("접근 권한이 없습니다."); return false; } }, // 기본 다운로드 download:function(filename){ document.location.href="/html/data/"+filename; }, // 서버로 통해 다운로드 severDownload:function(filename){ var downloadname = filename; $('#downlodeForm').attr("action","/html/?pmode=datafiledownload"); $('#downlodeForm').submit(); }, // 언어 설정 setLang:function(str){ if(str=="-kr"){str="";} var changeStr=str; /* var splitURL=document.location.href.split("?"); if(splitURL.length>1){ var arURL =splitURL[1].split("&"); if(arURL.length>1){ //if(str!="-en") swep=document.location.href.replace('-en',''); //else swep=document.location.href.replace('&MMC_pid','-en&MMC_pid'); //document.location.href=swep; }else document.location.href="?pmode=main"+str; }else */ document.location.href="?pmode=main"+str; } } $.fn.disable=function(tf){ return this.each(function(){ if(typeof this.disabled!="undefined")this.disabled=tf; }); } // 메뉴링크 function menuAcsChk(href, acs){ if (acs=="ok"){ location.href=href; }else if (acs=="no"){ alert("접근 권한이 없습니다."); return false; } } // 전체선택, 선택해제 (checkbox) function fnChkAll(chkNm){ if ($("#allChk").is(":checked")){ $('input[name*=chk]').each(function(){ //alert(this.id); //$(this).attr("checked", true); $(this)[0].checked = true; }); }else{ $('input[name*=chk]').each(function(){ $(this)[0].checked = false; }); } } // 웹 폼 체크 function doWebFormCheck(){ for (var n = 0; n < arrWebForm.options.length; n++ ){ switch (arrWebForm.options[n].formtype){ case "text" : if ($("#" + arrWebForm.options[n].field).val().replace(/\s/g, "").length == 0){ alert(arrWebForm.options[n].message);$("#" + arrWebForm.options[n].field).focus();return false; } break; case "select" : if ($("#" + arrWebForm.options[n].field + " option:selected").val() == ""){ alert(arrWebForm.options[n].message);$("#" + arrWebForm.options[n].field).focus();return false; } break; case "radio" : if ($("input[name=" + arrWebForm.options[n].field + "]:checked").length == 0){ alert(arrWebForm.options[n].message); return false; } break; case "checkbox" : if ($("input[name=" + arrWebForm.options[n].field + "]:checked").length == 0){ alert(arrWebForm.options[n].message); return false; } break; case "textarea" : if ($("#" + arrWebForm.options[n].field).val().replace(/\s/g, "").length == 0){ alert(arrWebForm.options[n].message); return false; } break; } } return true; } // 달력 $(document).ready(function (){ // 숫자만 입력 처리 $("input[evname*='onlynum']").keyup(function(event){ if( !((event.keyCode>=48 && event.keyCode<=57) || (event.keyCode>=96 && event.keyCode<=105) || event.keyCode==8 || event.keyCode==110 || event.keyCode==9) ){ event.returnValue=false; $(this).val($(this).val().replace(/[^0-9]/gi, "")); } }); // 달력 날짜 픽업 (속성명:evname) $("input[evname=dtPicker]").datepicker({ monthNames: ['1월','2월','3월','4월','5월','6월','7월','8월','9월','10월','11월','12월'], monthNamesShort: ['1월','2월','3월','4월','5월','6월','7월','8월','9월','10월','11월','12월'], dayNamesMin: ['일', '월', '화', '수', '목', '금', '토'], dateFormat: 'yy-mm-dd', buttonText: '달 력', prevText: '이전달', nextText: '다음달' }); // tooltip var glTiCon = ''; $("img[evname='tooltip']").hover( function (event) { var pageX = ""; var pageY = ""; if (jQuery.browser.msie){ pageX = event.clientX + document.documentElement.scrollLeft; pageY = event.clientY + document.documentElement.scrollTop; //alert(document.documentElement.scrollTop); return false; }else{ pageX = event.pageX; pageY = event.pageY; } if(this.title!=''){ glTiCon = this.title; $('#strtooltip').css('left',pageX+20); $('#strtooltip').css('top',pageY-20); $('#strtooltip').html($(this).attr('title')).addClass('strtooltip'); this.title=''; } }, function () { $('#strtooltip').html('').removeClass('strtooltip'); this.title = glTiCon; glTiCon = ''; }); /************************************************** * 세로형 서브메뉴 **************************************************/ var speed = 60; var flag = true; for(var i = 1; i <= 5; i++) { $("#topm" + i +" , #topmd" + i).mouseover(function () { var id = $(this).attr('id'); var num = id.substr(id.length -1, 3); var subMenu = $("#topmd" + num); subMenu.css('width', $(subMenu).width()+"px"); // 자기 가로크기로 다시 고정 시켜야 위치가 변하지 않음. var width = $(this).parent().width() - $(subMenu).width(); var text = 'topm' + num; if (id == text) { subMenu.css('left', (width / 2) + 'px'); } if(flag){ subMenu.stop(true, false).fadeToggle(speed); } }).mouseout(function () { var id = $(this).attr('id'); var num = id.substr(id.length-1, 3); if(flag) { $("#topmd" + num).stop(true, false).fadeToggle(speed); } }); } }); // 윈도우 리사이즈 function resizewindow(d,v) { if(d.body.style.zoom == 0 ) { d.body.style.zoom = v ; } else { d.body.style.zoom *= v; } } // 즐겨찾기 function bookMark(title, u){ ua = navigator.userAgent.toLowerCase(); var rv = -1; //IE 11,10,9,8 var trident = ua.match(/Trident\/(\d.\d)/i); if( trident != null ) { if( trident[1] == "7.0" ) rv = "IE" + 11; if( trident[1] == "6.0" ) rv = "IE" + 10; if( trident[1] == "5.0" ) rv = "IE" + 9; if( trident[1] == "4.0" ) rv = "IE" + 8; } //IE 7... if( navigator.appName == 'Microsoft Internet Explorer' ) rv = "IE" + 7; var __msie = rv.substr(0,2); //ie7,8.9,10,11 if (window.sidebar) { window.sidebar.addPanel(title, u, ""); }else if(window.opera && window.print) { var elem = document.createElement('a'); elem.setAttribute('href',u); elem.setAttribute('title',title); elem.setAttribute('rel','sidebar'); elem.click(); } else if(document.all) { //ie11 에서 if(document.all) 사용불가 window.external.AddFavorite(u, title); } else if(__msie == "IE") {//ie7,8.9,10,11 window.external.AddFavorite(u, title); }else if(ua.indexOf('chrome') !== -1 || ua.indexOf('safari') !== -1){ alert("를 눌러 즐겨찾기를 추가해주세요."); }else{ return true; } } // 셋째자리에 콤마 function setComma(_no) { return _no.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); } jQuery(function($){ $.datepicker.regional["ko"] = { closeText: "닫기", prevText: "이전달", nextText: "다음달", currentText: "오늘", monthNames: ["1월(JAN)","2월(FEB)","3월(MAR)","4월(APR)","5월(MAY)","6월(JUN)", "7월(JUL)","8월(AUG)","9월(SEP)","10월(OCT)","11월(NOV)","12월(DEC)"], monthNamesShort: ["1월","2월","3월","4월","5월","6월", "7월","8월","9월","10월","11월","12월"], dayNames: ["일","월","화","수","목","금","토"], dayNamesShort: ["일","월","화","수","목","금","토"], dayNamesMin: ["일","월","화","수","목","금","토"], weekHeader: "Wk", dateFormat: "yymmdd", firstDay: 0, isRTL: false, showMonthAfterYear: true, yearSuffix: "" }; $.datepicker.setDefaults($.datepicker.regional["ko"]); }); ;/*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas. Dual MIT/BSD license */ /*! NOTE: If you're already including a window.matchMedia polyfill via Modernizr or otherwise, you don't need this part */ window.matchMedia=window.matchMedia||(function(e,f){var c,a=e.documentElement,b=a.firstElementChild||a.firstChild,d=e.createElement("body"),g=e.createElement("div");g.id="mq-test-1";g.style.cssText="position:absolute;top:-100em";d.appendChild(g);return function(h){g.innerHTML='­';a.insertBefore(d,b);c=g.offsetWidth==42;a.removeChild(d);return{matches:c,media:h}}})(document); /*! Respond.js v1.1.0: min/max-width media query polyfill. (c) Scott Jehl. MIT/GPLv2 Lic. j.mp/respondjs */ (function(e){e.respond={};respond.update=function(){};respond.mediaQueriesSupported=e.matchMedia&&e.matchMedia("only all").matches;if(respond.mediaQueriesSupported){return}var w=e.document,s=w.documentElement,i=[],k=[],q=[],o={},h=30,f=w.getElementsByTagName("head")[0]||s,g=w.getElementsByTagName("base")[0],b=f.getElementsByTagName("link"),d=[],a=function(){var D=b,y=D.length,B=0,A,z,C,x;for(;B-1,minw:F.match(/\(min\-width:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:F.match(/\(max\-width:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||"")})}}j()},l,r,v=function(){var z,A=w.createElement("div"),x=w.body,y=false;A.style.cssText="position:absolute;font-size:1em;width:1em";if(!x){x=y=w.createElement("body")}x.appendChild(A);s.insertBefore(x,s.firstChild);z=A.offsetWidth;if(y){s.removeChild(x)}else{x.removeChild(A)}z=p=parseFloat(z);return z},p,j=function(I){var x="clientWidth",B=s[x],H=w.compatMode==="CSS1Compat"&&B||w.body[x]||B,D={},G=b[b.length-1],z=(new Date()).getTime();if(I&&l&&z-l-1?(p||v()):1)}if(!!J){J=parseFloat(J)*(J.indexOf(y)>-1?(p||v()):1)}if(!K.hasquery||(!A||!L)&&(A||H>=C)&&(L||H<=J)){if(!D[K.media]){D[K.media]=[]}D[K.media].push(k[K.rules])}}for(var E in q){if(q[E]&&q[E].parentNode===f){f.removeChild(q[E])}}for(var E in D){var M=w.createElement("style"),F=D[E].join("\n");M.type="text/css";M.media=E;f.insertBefore(M,G.nextSibling);if(M.styleSheet){M.styleSheet.cssText=F}else{M.appendChild(w.createTextNode(F))}q.push(M)}},n=function(x,z){var y=c();if(!y){return}y.open("GET",x,true);y.onreadystatechange=function(){if(y.readyState!=4||y.status!=200&&y.status!=304){return}z(y.responseText)};if(y.readyState==4){return}y.send(null)},c=(function(){var x=false;try{x=new XMLHttpRequest()}catch(y){x=new ActiveXObject("Microsoft.XMLHTTP")}return function(){return x}})();a();respond.update=a;function t(){j(true)}if(e.addEventListener){e.addEventListener("resize",t,false)}else{if(e.attachEvent){e.attachEvent("onresize",t)}}})(this); //gnb $(document).ready(function(e) { $('#gnb').mouseenter(function(e) { $(this).addClass('on'); }); $('#gnb').mouseleave(function(e) { $(this).removeClass('on'); }); $('#gnb>ul>li').mouseenter(function(e) { $(this).find('ul').show(); }); $('#gnb>ul>li').mouseleave(function(e) { $(this).find('ul').hide(); }); });