<SCRIPT language=javascript>
var diarydays="<2004-08-05><2004-08-09><2004-08-12><2004-08-17><2004-08-19><2004-07-14><2004-07-13><2004-07-08><2004-07-05><2004-07-04><2004-07-03><2004-06-27><2004-06-26><2004-06-25>";
</SCRIPT>
<STYLE>.calendarBigBorder {
BORDER-RIGHT: #999 1px dotted; BORDER-TOP: #999 1px dotted; FONT-SIZE: 9pt; BORDER-LEFT: #999 1px dotted; WIDTH: 170px; BORDER-BOTTOM: #999 1px dotted; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; BACKGROUND-COLOR: #ffffff; TEXT-DECORATION: none
}
.calendarTd {
FONT-SIZE: 9pt; WIDTH: 11%; COLOR: #000000; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; HEIGHT: 18px; BACKGROUND-COLOR: #eeeeee; TEXT-ALIGN: center
}
.calendarMInput {
BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; FONT-SIZE: 9pt; BORDER-LEFT: #666666 1px solid; WIDTH: 19px; COLOR: #0099ff; BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; HEIGHT: 15px; BACKGROUND-COLOR: #ffffff; TEXT-DECORATION: none
}
.calendarYInput {
BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; FONT-SIZE: 9pt; BORDER-LEFT: #666666 1px solid; WIDTH: 34px; COLOR: #0099ff; BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; HEIGHT: 15px; BACKGROUND-COLOR: #ffffff; TEXT-DECORATION: none
}
.calendarMonthTitle {
BORDER-TOP-WIDTH: 1px; FONT-WEIGHT: normal; BORDER-LEFT-WIDTH: 1px; FONT-SIZE: 9pt; BORDER-LEFT-COLOR: #999999; COLOR: #333333; BORDER-TOP-COLOR: #999999; BORDER-BOTTOM: #999999 1px; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; HEIGHT: 24px; BACKGROUND-COLOR: #eeeeee; TEXT-ALIGN: center; BORDER-RIGHT-WIDTH: 1px; TEXT-DECORATION: none; BORDER-RIGHT-COLOR: #999999
}
.calendarNow {
FONT-WEIGHT: bold; FONT-SIZE: 9pt; COLOR: #000000; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; HEIGHT: 18px; BACKGROUND-COLOR: #c0c9d3; TEXT-ALIGN: center
}
.calendarDaySat {
FONT-SIZE: 9pt; WIDTH: 12%; COLOR: #333333; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; HEIGHT: 18px; BACKGROUND-COLOR: #eeeeee; TEXT-ALIGN: center; TEXT-DECORATION: none
}
.calendarDaySun {
FONT-SIZE: 9pt; WIDTH: 12%; COLOR: #333333; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; HEIGHT: 18px; BACKGROUND-COLOR: #eeeeee; TEXT-ALIGN: center; TEXT-DECORATION: none
}
.calendarLink {
FONT-WEIGHT: normal; FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; HEIGHT: 18px; BACKGROUND-COLOR: #e7e7f6; TEXT-ALIGN: center; TEXT-DECORATION: none
}
.categoryTxt {
FONT-SIZE: 9pt; COLOR: #333333; LINE-HEIGHT: 23px; FONT-FAMILY: "Arial", "Helvetica", "sans-serif", "宋体"; TEXT-DECORATION: none
}
.categoryTable {
BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #71b99c 1px solid; BORDER-BOTTOM: #000000 1px solid; BORDER-LEFT-STYLE: none
}
</STYLE>
<SCRIPT language=JavaScript>
var months = new Array("一", "二", "三","四", "五", "六", "七", "八", "九","十", "十一", "十二");
var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31,30, 31, 30, 31);
var days = new Array("日","一", "二", "三","四", "五", "六");
var classTemp;
var calendarHover="calendarHover";
var today=new getToday();
var year=today.year;
var month=today.month;
var newCal;
//得到某月天数
function getDays(month, year)
{ if (1 == month)
return ((0 == year % 4) && (0 != (year % 100))) ||(0 == year % 400) ? 29 : 28;
else
return daysInMonth[month];
}
//得到当天时间信息
function getToday()
{ this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
//生成日历
function Calendar()
{ newCal = new Date(year,month,1); //当前月的第一天
today = new getToday();
var day = -1; //用来判断日历中是否为当天
var startDay = newCal.getDay(); //当月开始时间
var endDay=getDays(newCal.getMonth(), newCal.getFullYear());//当月结束时间
var daily = 0; //用来生成日历中的天数值
if ((today.year == newCal.getFullYear()) &&(today.month == newCal.getMonth()))
day = today.day;
var caltable = document.all.caltable.tBodies.calendar; //得到日历表格的集合
var intDaysInMonth =getDays(newCal.getMonth(), newCal.getFullYear()); //得到当月天数
//生成日历
for (var intWeek = 0; intWeek < caltable.rows.length;intWeek++)
for (var intDay = 0;intDay < caltable.rows[intWeek].cells.length;intDay++)
{
var cell = caltable.rows[intWeek].cells[intDay]; //得到单元袼
//生成字符串用于判断当天是否有日志
var montemp=(newCal.getMonth()+1)<10?("0"+(newCal.getMonth()+1)):(newCal.getMonth()+1);
if ((intDay == startDay) && (0 == daily)){ daily = 1;}
var daytemp=daily<10?("0"+daily):(daily);
var d="<"+newCal.getFullYear()+"-"+montemp+"-"+daytemp+">";
//选择样式
if(day==daily)
cell.className="calendarNow";
else if(diarydays.indexOf(d)!=-1)
cell.className="calendarLink";
else if(intDay==6)
cell.className = "calendarDaySat";
else if (intDay==0)
cell.className ="calendarDaySun";
else
cell.className="calendarTd";
//生成值
if ((daily > 0) && (daily <= intDaysInMonth))
{ cell.innerText = daily;
daily++;
}
else
cell.innerText = "";
}
document.all.year.value=year;
document.all.month.value=month+1;
}
function subMonth()
{
if ((month-1)<0)
{
month=11;
year=year-1;
}
else
{
month=month-1;
}
Calendar();
}
function addMonth()
{
if((month+1)>11)
{
month=0;
year=year+1;
}
else
{
month=month+1;
}
Calendar();
}
//得到响应事件
function getDiary()
{
var mon=(newCal.getMonth()+1)<10?("0"+(newCal.getMonth()+1)):(newCal.getMonth()+1);
var day=event.srcElement.innerText<10?("0"+event.srcElement.innerText):(event.srcElement.innerText);
var d="<"+newCal.getFullYear()+"-"+mon+"-"+day+">";
if ("TD" == event.srcElement.tagName)
if (("" != event.srcElement.innerText)&&(diarydays.indexOf(d)!=-1))
{
diary.location="/foxmail/archive/"+newCal.getFullYear()+"/"+mon+"/"+day+".aspx";
window.location.href = diary.location;
}
}
function setDate()
{
if (document.all.month.value<1||document.all.month.value>12)
{
alert("月的有效范围在1-12之间!");
return;
}
year=Math.ceil(document.all.year.value);
month=Math.ceil(document.all.month.value-1);
Calendar();
}
</SCRIPT>
<TABLE class=calendarBigBorder id=caltable cellSpacing=1 cellPadding=0 width=200
border=0>
<THEAD>
<TR vAlign=center align=middle>
<TD class=calendarMonthTitle colSpan=7><INPUT class=calendarYInput
onpaste="this.value=this.value.replace(/[^0-9]/g,'')"
onkeydown="if (event.keyCode==13){setDate()}"
onkeyup="this.value=this.value.replace(/[^0-9]/g,'')" maxLength=4 size=3
name=year>年 <INPUT class=calendarMInput
onpaste="this.value=this.value.replace(/[^0-9]/g,'')"
onkeydown="if (event.keyCode==13){setDate()}"
onkeyup="this.value=this.value.replace(/[^0-9]/g,'')" maxLength=2 size=1
name=month>月 [<A onclick=addMonth() href="javascript:;">下月</A>] [<A
onclick=subMonth() href="javascript:;">上月</A>]</TD></TR>
<TR vAlign=center align=middle>
<SCRIPT language=JavaScript>
document.write("<TD class=calendarDaySun id=diary>" + days[0] + "</TD>");
for (var intLoop = 1; intLoop < days.length-1;
intLoop++)
document.write("<TD class=calendarTd id=diary>" + days[intLoop] + "</TD>");
document.write("<TD class=calendarDaySat id=diary>" + days[intLoop] + "</TD>");
</SCRIPT>
</TR></THEAD>
<TBODY onmouseup=document.selection.empty() oncontextmenu="return false"
onselectstart="return false" id=calendar ondragstart="return false"
onbeforecopy="return false" onclick=getDiary()
oncopy=document.selection.empty() align=middle
onselect="document.selection.empty()" cellpadding="0" cellspacing="0"
border="1">
<SCRIPT language=JavaScript>
for (var intWeeks = 0; intWeeks < 6; intWeeks++) {
document.write("<TR style='cursor:hand'>");
for (var intDays = 0; intDays < days.length;intDays++)
document.write("<TD class=calendarTd onMouseover='{classTemp=this.className;this.className=calendarHover}' onMouseOut='this.className=classTemp'></TD>");
document.write("</TR>");
}
</SCRIPT>
</TBODY></TABLE>
<SCRIPT language=JavaScript>
Calendar();
</SCRIPT>
<!-- Blog日历表结束 --><!-- Start of StatCounter Code -->
posted on 2006-04-03 14:13
汪杰 阅读(402)
评论(0) 编辑 收藏 引用 所属分类:
hengxing网站js