/** @ program : javascript ui framework; @ auth : thKim™ @ desc : 달력관련스크립트. **/ $.calendar = function () { this.cmx=0; this.cmy=0; this.clayer = -1; } $.calendar.prototype = { // Layer Hidden; Hide:function(oid, action) { if (typeof oid == "object") { var len = oid.length; if (len==null) { oid.style.display = action; } else { for (var i=0;ibody) { pos_x = Number(pos_x)-Number($("#cDiv"+num).width()) } $("#cDiv"+num).css({"left":pos_x, "top":pos_y,"visibility":"visible"}); // console.log(a); /* div.style.left = pos_x; div.style.top = pos_y; div.style.visibility = "visible"; */ try { var hDiv = document.getElementById("HiddenSpan"); if (typeof hDiv == "object") { this.Hide(hDiv, "none"); } } catch (e) { } return ; }, HideLayer:function(num) { var o ; if (this.clayer > -1) //clayer 값이 -1 인 경우에만 레이어가 사라지게 한다. return ; o = eval("document.getElementById('cDiv" + num + "')"); o.style.visibility = "hidden" ; try { var hDiv = document.getElementById("HiddenSpan"); if (typeof hDiv == "object") { this.Hide(hDiv, "block"); } } catch (e) { } }, setValue:function(ival, obj, y, m, d, ev) { m = (m < 10 ? "0" : "") + m; d = (d < 10 ? "0" : "") + d; var day=y+"-"+m+"-"+d eval("document."+obj+".value='"+day+"' "); o = eval("document.getElementById('cDiv" + ival + "')"); o.style.visibility = "hidden" ; try{ // 일정관리일경우 if(ev=='schedule') { fScheduleTable(); } }catch(e){} }, Load:function(ival, obj, y, m, ev) { try { var afrm = eval("document."+obj+".value"); if (afrm) { // 현재년/월로 세팅 var splitdate = afrm.split("-"); y = Number(splitdate[0]); m = Number(splitdate[1]); } else { var today = new Date(); y = today.getFullYear(); m = today.getMonth()+1; } this.Calendar(ival, obj, y, m, ev); } catch (e) { $.Error(e); } }, Calendar:function(ival, obj, y, m, ev) { var text = '\n\n'; for (i = 0; i < 7; i++) text += ''; var d1 = (y+(y-y%4)/4-(y-y%100)/100+(y-y%400)/400+m*2+(m*5-m*5%9)/9-(m<3?y%4||y%100==0&&y%400?2:3:4))%7; for (i = 0; i < 42; i++) { if (i%7==0) text += '\n'; if (i < d1 || i >= d1+(m*9-m*9%8)/8%2+(m==2?y%4||y%100==0&&y%400?28:29:30)) { text += ''; } else { if (i%7==0) { style=" color:#ff0000 "; cls = "holiday"; } else if (i%7 == 6) { cls = "saturday"; style = "color:#0000ff "; } else { cls = "weekday"; style = " color:#666666 "; } text += ''; } text + '\n
'; text += ''; text += ''; text += ' ' + y + '/' + ((m < 10) ? ('0' + m) : m) + ' '; text += ''; text += ''; var dayofweek = new Array('일','월','화','수','목','금','토'); text += '
' + dayofweek[i] + '
' + (i+1-d1) + '
' } var Innerobj="calendarDiv"+ival; document.getElementById(Innerobj).innerHTML = text; } } var fwCal = new $.calendar();