¡¡¡¡<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
¡¡¡¡<html xmlns="http://www.w3.org/1999/xhtml">
¡¡¡¡<head>
¡¡¡¡<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
¡¡¡¡<title></title>
¡¡¡¡<script src="../JS/connotation.js" type="text/javascript"></script>
¡¡¡¡<script type="text/javascript">
¡¡¡¡var c = new Calendar("c");
¡¡¡¡document.write(c);
¡¡¡¡</script>
¡¡¡¡</head>
¡¡¡¡<body>
¡¡¡¡<div>
¡¡¡¡ÆÕͨµ÷ÓÃ:<input type="text" name="txt2" onclick="c.showMoreDay = true; c.show(this);" /><br />
¡¡¡¡<div style="height: 262px">
¡¡¡¡</div>
¡¡¡¡°´Å¥µ÷ÓÃ:<input type="text" name="btntxt" id="btntxt" /><input name="button" value="*"
¡¡¡¡id="button" type="button" onclick="c.showMoreDay = true; c.show(getObjById('btntxt'), '1982-1-1', this)" />
¡¡¡¡<br />
¡¡¡¡<input type="text" name="btntxt3" id="btntxt3" /><input name="button3" value="*"
¡¡¡¡id="button3" type="button" onclick="c.showMoreDay = true; c.show(this, getObjById('btntxt3'))" />
¡¡¡¡</div>
¡¡¡¡</body>
¡¡¡¡</html>
¡¡¡¡ÐèÒªµÄjQueryÎļþ
¡¡¡¡
¡¡¡¡function Calendar(objName)
¡¡¡¡{
¡¡¡¡this.style = {
¡¡¡¡borderColor : "#909eff", //±ß¿òÑÕÉ«
¡¡¡¡headerBackColor : "#909EFF", //±íÍ·±³¾°ÑÕÉ«
¡¡¡¡headerFontColor : "#ffffff", //±íÍ·×ÖÌåÑÕÉ«
¡¡¡¡bodyBarBackColor : "#f4f4f4", //ÈÕÀú±êÌâ±³¾°É«
¡¡¡¡bodyBarFontColor : "#000000", //ÈÕÀú±êÌâ×ÖÌåÉ«
¡¡¡¡bodyBackColor : "#ffffff", //ÈÕÀú±³¾°É«
¡¡¡¡bodyFontColor : "#000000", //ÈÕÀú×ÖÌåÉ«
¡¡¡¡bodyHolidayFontColor : "#ff0000", //¼ÙÈÕ×ÖÌåÉ«
¡¡¡¡watermarkColor : "#d4d4d4", //±³¾°Ë®Ó¡É«
¡¡¡¡moreDayColor : "#cccccc"
¡¡¡¡};
¡¡¡¡this.showMoreDay = false; //ÊÇ·ñÏÔʾÉÏÔºÍÏÂÔµÄÈÕÆÚ
¡¡¡¡this.Obj = objName;
¡¡¡¡this.date = null;
¡¡¡¡this.mouseOffset = null;
¡¡¡¡this.dateInput = null;
¡¡¡¡this.timer = null;
¡¡¡¡};
¡¡¡¡Calendar.prototype.toString = function()
¡¡¡¡{
¡¡¡¡var str = this.getStyle();
¡¡¡¡str += '<div Author="alin" class="calendar" style="display:none;" onselectstart="return false" oncontextmenu="return false" id="Calendar">\n';
¡¡¡¡str += '<div Author="alin" class="cdrWatermark" id="cdrWatermark"></div><div id="cdrBody" style="position:absolute;left:0px;top:0px;z-index:2;width:140px;">';
¡¡¡¡str += this.getHeader();
¡¡¡¡str += this.getBody();
¡¡¡¡str += '</div><div Author="alin" id="cdrMenu" style="position:absolute;left:0px;top:0px;z-index:3;display:none;" onmouseover="' + this.Obj + '.showMenu(null);" onmouseout="' + this.Obj + '.hideMenu();"></div></div>';
¡¡¡¡return str;
¡¡¡¡};
¡¡¡¡Calendar.prototype.getStyle = function()
¡¡¡¡{
¡¡¡¡var str = '<style type="text/css">\n';
¡¡¡¡str += '.calendar{position:absolute;width:140px!important;width :142px;height:184px!important;height :174px;background-color:'+this.style.bodyBackColor+';border:1px solid ' + this.style.borderColor + ';left:0px;top:0px;z-index:9999;}\n';
¡¡¡¡str += '.cdrHeader{background-color:'+ this.style.headerBackColor +';width:140px;height:22px;font-size:12px;color:'+this.style.headerFontColor+';}\n';
¡¡¡¡str += '.cdrWatermark{position:absolute;left:0px;top:55px;width:140px;font-family: Arial Black;font-size:50px;color:'+this.style.watermarkColor+';z-index:1;text-align:center;}\n';
¡¡¡¡str += '.cdrBodyBar{background-color:' + this.style.bodyBarBackColor + ';font-size:12px;color:' + this.style.bodyBarFontColor + ';width:140px;height:20px;}\n';
¡¡¡¡str += '.cdrBody{width:140px;height:122px!important; height :110px;font-size:12px;cursor:pointer;color:' + this.style.bodyFontColor + ';}\n';
¡¡¡¡str += '.dayOver{height:16px;padding:0px;border:1px solid black;background-color:#f4f4f4;}\n';
¡¡¡¡str += '.dayOut{padding:1px;border:none;height:16px;}\n';
¡¡¡¡str += '.menuOver{background-color:'+this.style.headerBackColor+';color:'+this.style.headerFontColor+';font-size:12px;}\n';
¡¡¡¡str += '.headerOver{border:1px solid black;background-color:#f4f4f4;color:black;cursor:default;}\n';
¡¡¡¡str += '.cdrMenu{font-size:12px;border:1px solid #000000;background-color:#ffffff;cursor:default;width:100%}\n';
¡¡¡¡str += 'html>body #Calendar{width:142px;174px;}';
¡¡¡¡str += '</style>\n';
¡¡¡¡return str;
¡¡¡¡};
¡¡¡¡Calendar.prototype.getHeader = function()
¡¡¡¡{
¡¡¡¡var str = '<table Author="alin" class="cdrHeader" cellSpacing="2" cellPadding="0"><tr Author="alin" align="center">\n';
¡¡¡¡str += '<td Author="alin" onmouseover="this.className=\'headerOver\'" onmouseout="this.className=\'\'" id="previousYear" title="ÉÏÒ»Äê·Ý" style="cursor:pointer;width:10px;" onclick="'+this.Obj+'.onChangeYear(false);"><<</td>\n';
¡¡¡¡str += '<td Author="alin" onmouseover="this.className=\'headerOver\'" onmouseout="this.className=\'\'" id="previousMonth" title="ÉÏÒ»Ô·Ý" style="cursor:pointer;width:10px;" onclick="'+this.Obj+'.onChangeMonth(false);"><</td>\n';
¡¡¡¡str += '<td Author="alin" onmouseover="this.className=\'headerOver\'" id="currentYear" style="width:50px;" onclick="' + this.Obj + '.showMenu(true);" onmouseout="' + this.Obj + '.hideMenu();this.className=\'\';">0</td>\n';
¡¡¡¡str += '<td Author="alin" onmouseover="this.className=\'headerOver\'" id="currentMonth" onclick="' + this.Obj + '.showMenu(false);" onmouseout="' + this.Obj + '.hideMenu();this.className=\'\';">0</td>\n';
¡¡¡¡str += '<td Author="alin" onmouseover="this.className=\'headerOver\'" onmouseout="this.className=\'\'" id="nextMonth" title="ÏÂÒ»Ô·Ý" style="cursor:pointer;width:10px;" onclick="'+this.Obj+'.onChangeMonth(true);">></td>\n';
¡¡¡¡str += '<td Author="alin" onmouseover="this.className=\'headerOver\'" onmouseout="this.className=\'\'" id="nextYear" title="ÏÂÒ»Äê·Ý" style="cursor:pointer;width:10px;" onclick="'+this.Obj+'.onChangeYear(true);">>></td></tr>\n';
¡¡¡¡str += '</table>\n';
¡¡¡¡return str;
¡¡¡¡};
¡¡¡¡Calendar.prototype.getBody = function()
¡¡¡¡{
¡¡¡¡var n = 0;
¡¡¡¡var str = this.getBodyBar();
¡¡¡¡str += '<table Author="alin" class="cdrBody" cellSpacing="2" cellPadding="0">\n';
¡¡¡¡for(i = 0; i < 6; i++)
¡¡¡¡{
¡¡¡¡str += '<tr Author="alin" align="center">';
¡¡¡¡for(j = 0; j < 7; j++)
¡¡¡¡{
¡¡¡¡str += '<td Author="alin" class="dayOut" id="cdrDay'+(n++)+'" width="13%"></td>\n';
¡¡¡¡}
¡¡¡¡str += '</tr>';
¡¡¡¡}
¡¡¡¡str += '</table>\n';
¡¡¡¡str += '<table Author="alin" class="cdrBodyBar" cellSpacing="2" cellPadding="0"><tr align="center" Author="alin"><td Author="alin" style="cursor:pointer;" onclick="'+this.Obj+'.getToday();">½ñÌ죺'+new Date().toFormatString("yyyyÄêmmÔÂddÈÕ")+'</td></tr></table>\n';
¡¡¡¡return str;
¡¡¡¡};
¡¡¡¡Calendar.prototype.getBodyBar = function()
¡¡¡¡{
¡¡¡¡var str = '<table Author="alin_bar" id="cdrBodyBar" class="cdrBodyBar" style="cursor:move;" cellSpacing="2" cellPadding="0"><tr Author="alin_bar" align="center">\n';
¡¡¡¡var day = new Array('ÈÕ','Ò»','¶þ','Èý','ËÄ','Îå','Áù');
¡¡¡¡for(i = 0; i < 7; i++)
¡¡¡¡{
¡¡¡¡str += '<td Author="alin_bar">' + day[i] + '</td>\n';
¡¡¡¡}
¡¡¡¡str += '</tr></table>';
¡¡¡¡return str;
¡¡¡¡}
¡¡¡¡Calendar.prototype.getYearMenu = function(year)
¡¡¡¡{
¡¡¡¡var str = '<table Author="alin" cellSpacing="0" class="cdrMenu" cellPadding="0">\n';
¡¡¡¡for(i = 0; i < 10; i++)
¡¡¡¡{
¡¡¡¡var _year = year + i;
¡¡¡¡var _date = new Date(_year,this.date.getMonth(),this.date.getDate());
¡¡¡¡str += '<tr Author="alin" align="center"><td Author="alin" width="13%" height="16" ';
¡¡¡¡if(this.date.getFullYear() != _year)
¡¡¡¡{
¡¡¡¡str += 'onmouseover="this.className=\'menuOver\'" onmouseout="this.className=\'\'" ';
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡str += 'class="menuOver"';
¡¡¡¡}
¡¡¡¡str += 'onclick="' + this.Obj + '.bindDate(\'' + _date.toFormatString("-") + '\')">' + _year + 'Äê</td>\n';
¡¡¡¡str += '</tr>';
¡¡¡¡}
¡¡¡¡str += '<tr Author="alin" align="center"><td Author="alin"><table Author="alin" style="font-size:12px;width:100%;" cellSpacing="0" cellPadding="0">\n';
¡¡¡¡str += '<tr Author="alin" align="center"><td Author="alin" onmouseover="this.className=\'menuOver\'" onmouseout="this.className=\'\'" onclick="'+this.Obj+'.getYearMenu('+ (year - 10) + ')"><<</td>\n';
¡¡¡¡str += '<td Author="alin" onmouseover="this.className=\'menuOver\'" onmouseout="this.className=\'\'" onclick="'+this.Obj+'.getYearMenu('+ (year + 10) +')">>></td><tr>\n';
¡¡¡¡str += '</table></td></tr>\n';
¡¡¡¡str += '</table>';
¡¡¡¡var _menu = getObjById("cdrMenu");
¡¡¡¡_menu.innerHTML = str;
¡¡¡¡};
¡¡¡¡Calendar.prototype.getMonthMenu = function()
¡¡¡¡{
¡¡¡¡var str = '<table Author="alin" cellSpacing="0" class="cdrMenu" cellPadding="0">\n';
¡¡¡¡for(i = 1; i <= 12; i++)
¡¡¡¡{
¡¡¡¡var _date = new Date(this.date.getFullYear(),i-1,this.date.getDate());
¡¡¡¡str += '</tr><tr Author="alin" align="center"><td Author="alin" height="16" ';
¡¡¡¡if(this.date.getMonth() + 1 != i)
¡¡¡¡{
¡¡¡¡str += 'onmouseover="this.className=\'menuOver\'" onmouseout="this.className=\'\'" ';
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡str += 'class="menuOver"';
¡¡¡¡}
¡¡¡¡str += 'onclick="' + this.Obj + '.bindDate(\'' + _date.toFormatString("-") + '\')">'+i+'ÔÂ</td></tr>\n';
¡¡¡¡}
¡¡¡¡str += '</table>';
¡¡¡¡var _menu = getObjById("cdrMenu");
¡¡¡¡_menu.innerHTML = str;
¡¡¡¡};
¡¡¡¡Calendar.prototype.show = function()
¡¡¡¡{
¡¡¡¡if (arguments.length > 3 || arguments.length == 0)
¡¡¡¡{
¡¡¡¡alert("¶Ô²»Æð£¡´«Èë²ÎÊý²»¶Ô£¡" );
¡¡¡¡return;
¡¡¡¡}
¡¡¡¡var _date = null;
¡¡¡¡var _evObj = null;
¡¡¡¡var _initValue = null
¡¡¡¡for(i = 0; i < arguments.length; i++)
¡¡¡¡{
¡¡¡¡if(typeof(arguments[i]) == "object" && arguments[i].type == "text")
¡¡¡¡{_date = arguments[i];}
¡¡¡¡else if(typeof(arguments[i]) == "object")
¡¡¡¡{_evObj = arguments[i];}
¡¡¡¡else if(typeof(arguments[i]) == "string")
¡¡¡¡{_initValue = arguments[i];}
¡¡¡¡}
¡¡¡¡_evObj = _evObj || _date;
¡¡¡¡inputObj = _date;
¡¡¡¡targetObj = _evObj
¡¡¡¡if(!_date){alert("´«Èë²ÎÊý´íÎó!"); return;}
¡¡¡¡this.dateInput = _date;
¡¡¡¡_date = _date.value;
¡¡¡¡if(_date == "" && _initValue) _date = _initValue;
¡¡¡¡this.bindDate(_date);
¡¡¡¡var _target = getPosition(_evObj);
¡¡¡¡var _obj = getObjById("Calendar");
¡¡¡¡_obj.style.display = "";
¡¡¡¡_obj.style.left = _target.x + 'px';
¡¡¡¡if((document.body.clientHeight - (_target.y + _evObj.clientHeight)) >= _obj.clientHeight)
¡¡¡¡{
¡¡¡¡_obj.style.top = (_target.y + _evObj.clientHeight) + 'px';
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡_obj.style.top = (_target.y - _obj.clientHeight) + 'px';
¡¡¡¡}
¡¡¡¡};
¡¡¡¡Calendar.prototype.hide = function()
¡¡¡¡{
¡¡¡¡var obj = getObjById("Calendar");
¡¡¡¡obj.style.display = "none";
¡¡¡¡};
¡¡¡¡Calendar.prototype.bindDate = function(date)
¡¡¡¡{
¡¡¡¡var _monthDays = new Array(31,30,31,30,31,30,31,31,30,31,30,31);
¡¡¡¡var _arr = date.split('-');
¡¡¡¡var _date = new Date(_arr[0],_arr[1]-1,_arr[2]);
¡¡¡¡if(isNaN(_date)) _date = new Date();
¡¡¡¡this.date = _date;
¡¡¡¡this.bindHeader();
¡¡¡¡var _year = _date.getFullYear();
¡¡¡¡var _month = _date.getMonth();
¡¡¡¡var _day = 1;
¡¡¡¡var _startDay = new Date(_year,_month,1).getDay();
¡¡¡¡var _previYear = _month == 0 ? _year - 1 : _year;
¡¡¡¡var _previMonth = _month == 0 ? 11 : _month - 1;
¡¡¡¡var _previDay = _monthDays[_previMonth];
¡¡¡¡if (_previMonth == 1) _previDay =((_previYear%4==0)&&(_previYear0!=0)||(_previYear@0==0))?29:28;
¡¡¡¡_previDay -= _startDay - 1;
¡¡¡¡var _nextDay = 1;
¡¡¡¡_monthDays[1] = ((_year%4==0)&&(_year0!=0)||(_year@0==0))?29:28;
¡¡¡¡for(i = 0; i < 40; i++)
¡¡¡¡{
¡¡¡¡var _dayElement = getObjById("cdrDay" + i);
¡¡¡¡_dayElement.onmouseover = Function(this.Obj + ".onMouseOver(this)");
¡¡¡¡_dayElement.onmouseout = Function(this.Obj + ".onMouseOut(this)");
¡¡¡¡_dayElement.onclick = Function(this.Obj + ".onClick(this)");
¡¡¡¡this.onMouseOut(_dayElement);
¡¡¡¡_dayElement.style.color = "";
¡¡¡¡if(i < _startDay)
¡¡¡¡{
¡¡¡¡//»ñÈ¡ÉÏÒ»¸öÔµÄÈÕÆÚ
¡¡¡¡if(this.showMoreDay)
¡¡¡¡{
¡¡¡¡var _previDate = new Date(_year,_month - 1,_previDay);
¡¡¡¡_dayElement.innerHTML = _previDay;
¡¡¡¡_dayElement.title = _previDate.toFormatString("yyyyÄêmmÔÂddÈÕ");
¡¡¡¡_dayElement.value = _previDate.toFormatString("-");
¡¡¡¡_dayElement.style.color = this.style.moreDayColor;
¡¡¡¡_previDay++;
¡¡¡¡}else
¡¡¡¡{
¡¡¡¡_dayElement.innerHTML = "";
¡¡¡¡_dayElement.title = "";
¡¡¡¡}
¡¡¡¡}
¡¡¡¡else if(_day > _monthDays[_month])
¡¡¡¡{
¡¡¡¡//»ñȡϸöÔµÄÈÕÆÚ
¡¡¡¡if(this.showMoreDay)
¡¡¡¡{
¡¡¡¡var _nextDate = new Date(_year,_month + 1,_nextDay);
¡¡¡¡_dayElement.innerHTML = _nextDay;
¡¡¡¡_dayElement.title = _nextDate.toFormatString("yyyyÄêmmÔÂddÈÕ");
¡¡¡¡_dayElement.value = _nextDate.toFormatString("-");
¡¡¡¡_dayElement.style.color = this.style.moreDayColor;
¡¡¡¡_nextDay++;
¡¡¡¡}else
¡¡¡¡{
¡¡¡¡_dayElement.innerHTML = "";
¡¡¡¡_dayElement.title = "";
¡¡¡¡}
¡¡¡¡}
¡¡¡¡else if(i >= new Date(_year,_month,1).getDay() && _day <= _monthDays[_month])
¡¡¡¡{
¡¡¡¡//»ñÈ¡±¾ÔÂÈÕÆÚ
¡¡¡¡_dayElement.innerHTML = _day;
¡¡¡¡if(_day == _date.getDate())
¡¡¡¡{
¡¡¡¡this.onMouseOver(_dayElement);
¡¡¡¡_dayElement.onmouseover = Function("");
¡¡¡¡_dayElement.onmouseout = Function("");
¡¡¡¡}
¡¡¡¡if(this.isHoliday(_year,_month,_day))
¡¡¡¡{
¡¡¡¡_dayElement.style.color = this.style.bodyHolidayFontColor;
¡¡¡¡}
¡¡¡¡var _curDate = new Date(_year, _month, _day);
¡¡¡¡_dayElement.title = _curDate.toFormatString("yyyyÄêmmÔÂddÈÕ");
¡¡¡¡_dayElement.value = _curDate.toFormatString("-");
¡¡¡¡_day++;
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡_dayElement.innerHTML = "";
¡¡¡¡_dayElement.title = "";
¡¡¡¡}
¡¡¡¡}
¡¡¡¡var _menu = getObjById("cdrMenu");
¡¡¡¡_menu.style.display = "none";
¡¡¡¡};
¡¡¡¡Calendar.prototype.bindHeader = function()
¡¡¡¡{
¡¡¡¡var _curYear = getObjById("currentYear");
¡¡¡¡var _curMonth = getObjById("currentMonth");
¡¡¡¡var _watermark = getObjById("cdrWatermark");
¡¡¡¡_curYear.innerHTML = this.date.toFormatString("yyyyÄê");
¡¡¡¡_curMonth.innerHTML = this.date.toFormatString("mmÔÂ");
¡¡¡¡_watermark.innerHTML = this.date.getFullYear();
¡¡¡¡};
¡¡¡¡Calendar.prototype.getToday = function()
¡¡¡¡{
¡¡¡¡var _date = new Date();
¡¡¡¡this.bindDate(_date.toFormatString("-"));
¡¡¡¡};
¡¡¡¡Calendar.prototype.isHoliday = function(year,month,date)
¡¡¡¡{
¡¡¡¡var _date = new Date(year,month,date);
¡¡¡¡return (_date.getDay() == 6 || _date.getDay() == 0);
¡¡¡¡};
¡¡¡¡Calendar.prototype.onMouseOver = function(obj)
¡¡¡¡{
¡¡¡¡obj.className = "dayOver";
¡¡¡¡};
¡¡¡¡Calendar.prototype.onMouseOut = function(obj)
¡¡¡¡{
¡¡¡¡obj.className = "dayOut";
¡¡¡¡};
¡¡¡¡Calendar.prototype.onClick = function(obj)
¡¡¡¡{
¡¡¡¡if(obj.innerHTML != "") this.dateInput.value = obj.value;
¡¡¡¡this.hide();
¡¡¡¡};
¡¡¡¡Calendar.prototype.onChangeYear = function(isnext)
¡¡¡¡{
¡¡¡¡var _year = this.date.getFullYear();
¡¡¡¡var _month = this.date.getMonth() + 1;
¡¡¡¡var _date = this.date.getDate();
¡¡¡¡if(_year > 999 && _year <10000)
¡¡¡¡{
¡¡¡¡if(isnext){_year++;}else{ _year --;}
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡alert("Äê·Ý³¬³ö·¶Î§£¨1000-9999£©!");
¡¡¡¡}
¡¡¡¡this.bindDate(_year + '-' + _month + '-' + _date);
¡¡¡¡};
¡¡¡¡Calendar.prototype.onChangeMonth = function(isnext)
¡¡¡¡{
¡¡¡¡var _year = this.date.getFullYear();
¡¡¡¡var _month = this.date.getMonth() + 1;
¡¡¡¡var _date = this.date.getDate();
¡¡¡¡if(isnext){ _month ++;} else {_month--;}
¡¡¡¡if(_year > 999 && _year <10000)
¡¡¡¡{
¡¡¡¡if(_month < 1) {_month = 12; _year--;}
¡¡¡¡if(_month > 12) {_month = 1; _year++;}
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡alert("Äê·Ý³¬³ö·¶Î§£¨1000-9999£©!");
¡¡¡¡}
¡¡¡¡this.bindDate(_year + '-' + _month + '-' + _date);
¡¡¡¡};
¡¡¡¡Calendar.prototype.showMenu = function(isyear)
¡¡¡¡{
¡¡¡¡var _menu = getObjById("cdrMenu");
¡¡¡¡if(isyear != null)
¡¡¡¡{
¡¡¡¡var _obj = (isyear)? getObjById("currentYear") : getObjById("currentMonth");
¡¡¡¡if(isyear)
¡¡¡¡{
¡¡¡¡this.getYearMenu(this.date.getFullYear() - 5);
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡this.getMonthMenu();
¡¡¡¡}
¡¡¡¡_menu.style.top = (_obj.offsetTop + _obj.offsetHeight) + 'px';
¡¡¡¡_menu.style.left = _obj.offsetLeft + 'px';
¡¡¡¡_menu.style.width = _obj.offsetWidth + 'px';
¡¡¡¡}
¡¡¡¡if (this.timer != null) clearTimeout(this.timer);
¡¡¡¡_menu.style.display="";
¡¡¡¡}
¡¡¡¡Calendar.prototype.hideMenu = function()
¡¡¡¡{
¡¡¡¡var _obj = getObjById("cdrMenu");
¡¡¡¡this.timer = window.setTimeout(function(){_obj.style.display='none';},500);
¡¡¡¡}
¡¡¡¡Number.prototype.NaN0 = function()
¡¡¡¡{
¡¡¡¡return isNaN(this) ? 0 : this;
¡¡¡¡}
¡¡¡¡Date.prototype.toFormatString = function(fs)
¡¡¡¡{
¡¡¡¡if(fs.length == 1)
¡¡¡¡{
¡¡¡¡return this.getFullYear() + fs + (this.getMonth() + 1) + fs + this.getDate();
¡¡¡¡}
¡¡¡¡fs = fs.replace("yyyy",this.getFullYear());
¡¡¡¡fs = fs.replace("mm",(this.getMonth() + 1));
¡¡¡¡fs = fs.replace("dd",this.getDate());
¡¡¡¡return fs;
¡¡¡¡}
¡¡¡¡var inputObj = null;
¡¡¡¡var targetObj = null;
¡¡¡¡var dragObj = null;
¡¡¡¡var mouseOffset = null;
¡¡¡¡function getObjById(obj)
¡¡¡¡{
¡¡¡¡if(document.getElementByIdx_x)
¡¡¡¡{
¡¡¡¡return document.getElementByIdx_x(obj);
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡alert("ä¯ÀÀÆ÷²»Ö§³Ö!");
¡¡¡¡}
¡¡¡¡}
¡¡¡¡function mouseCoords(ev)
¡¡¡¡{
¡¡¡¡if(ev.pageX || ev.pageY){
¡¡¡¡return {x:ev.pageX, y:ev.pageY};
¡¡¡¡}
¡¡¡¡return {
¡¡¡¡x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
¡¡¡¡y:ev.clientY + document.body.scrollTop - document.body.clientTop
¡¡¡¡};
¡¡¡¡}
¡¡¡¡function getPosition(e)
¡¡¡¡{
¡¡¡¡var left = 0;
¡¡¡¡var top = 0;
¡¡¡¡while (e.offsetParent){
¡¡¡¡left += e.offsetLeft + (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0);
¡¡¡¡top += e.offsetTop + (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0);
¡¡¡¡e = e.offsetParent;
¡¡¡¡}
¡¡¡¡left += e.offsetLeft + (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0);
¡¡¡¡top += e.offsetTop + (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0);
¡¡¡¡return {x:left, y:top};
¡¡¡¡}
¡¡¡¡function getMouseOffset(target, ev)
¡¡¡¡{
¡¡¡¡ev = ev || window.event;
¡¡¡¡var docPos = getPosition(target);
¡¡¡¡var mousePos = mouseCoords(ev);
¡¡¡¡return {x:mousePos.x - docPos.x, y:mousePos.y - docPos.y};
¡¡¡¡}
¡¡¡¡function closeCalendar(evt){
¡¡¡¡evt = evt || window.event;
¡¡¡¡var _target= evt.target || evt.srcElement;
¡¡¡¡if(!_target.getAttribute("Author") && _target != inputObj && _target != targetObj)
¡¡¡¡{
¡¡¡¡getObjById("Calendar").style.display = "none";
¡¡¡¡}
¡¡¡¡}
¡¡¡¡function dragStart(evt){
¡¡¡¡evt = evt || window.event;
¡¡¡¡var _target= evt.target || evt.srcElement;
¡¡¡¡if(_target.getAttribute("Author") == "alin_bar")
¡¡¡¡{
¡¡¡¡dragObj = getObjById("Calendar");
¡¡¡¡mouseOffset = getMouseOffset(dragObj, evt);
¡¡¡¡}
¡¡¡¡}
¡¡¡¡function drag(evt)
¡¡¡¡{
¡¡¡¡evt = evt || window.event;
¡¡¡¡if(dragObj)
¡¡¡¡{
¡¡¡¡var mousePos = mouseCoords(evt);
¡¡¡¡dragObj.style.left = (mousePos.x - mouseOffset.x) + 'px';
¡¡¡¡dragObj.style.top = (mousePos.y - mouseOffset.y) + 'px';
¡¡¡¡}
¡¡¡¡}
¡¡¡¡//Í϶¯½áÊø
¡¡¡¡function dragEnd(evt)
¡¡¡¡{
¡¡¡¡dragObj = null;
¡¡¡¡}
¡¡¡¡document.onclick = closeCalendar;
¡¡¡¡document.onmousedown = dragStart;
¡¡¡¡document.onmousemove = drag;
¡¡¡¡document.onmouseup = dragEnd;