今月のカレンダー

休日の判定には、前掲「休日チェック」を使います。


全ソース <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD><TITLE>カレンダーの表示</TITLE> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <style media="screen" type="text/css"> <!-- /* font base */ td {font:normal bold 10pt/12pt; text-align:center; background-color:#F5F5F5; padding:0pt 0pt 0pt 0pt; border:solid #999999; border-width:0pt 0pt 1.5pt 1pt;} td#holiday {background-color:#FFF4EA;} /* content base */ .con_a {color:#000000;} .con_sun {color:#FF0000;} .con_sat {color:#0000FF;} .con_month {color:#000000;} /* border base */ .bor_a {border:solid #999999; border-width:1pt 2pt 1pt 1pt;} --> </style> <script language="JavaScript" src="../dateUtil.js"></script> <SCRIPT type=text/javascript> <!-- function showCalendar(year, month) { var date = new Date(year, (month-1), 1); if (isNaN(date)) { var date = new Date(); } year = date.getFullYear(); month = date.getMonth()+1; var monthdays=new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); var days=new Array("日", "月", "火", "水", "木", "金", "土"); today=new Date().getDate(); // 年、うるう年の設定 if(((year%4==0)&&(year%100!=0))||(year%400==0)) { monthdays[1]=29; } document.write("<table border='0' cellspacing='0' cellpadding='0' class='bor_a'>"); document.write("<tr><td colspan='7' class='con_month'>"); document.write(year + '年' + month + '月'); document.write("</td></tr>"); //曜日の設定 document.write("<tr>"); for(i=0; i<7; i++) { if(i==0) { document.write("<td class='con_sun'>" + days[i] + "</th>"); } else if(i==6) { document.write("<td class='con_sat'>" + days[i] + "</th>"); } else { document.write("<td class='con_a'>" + days[i] + "</th>"); } } document.write("</tr>") thisMonthdays=monthdays[month-1]; //末日 date.setDate(1); startDay=date.getDay(); //月始め //月始めの空欄を出力 document.write("<tr>"); var col=0; for(i=0; i<startDay; i++){ document.write("<td>&nbsp;</td>"); col++; } //当月分の出力 for(i=1; i<=thisMonthdays; i++) { if (isHoliday(year, month, i)) { id = " id='holiday'"; } else { id = ""; } if(col==0) { document.write("<td class='con_sun' " + id + ">" + i + "</td>"); }else if(col==6) { document.write("<td class='con_sat' " + id + ">" + i + "</td>"); } else { document.write("<td class='con_a' " + id + ">" + i + "</td>"); } col++; if(col==7) { document.write("</tr>\n<tr>"); col=0; } } //月末の空欄を出力 for(; col<7; col++){ document.write("<td>&nbsp;</td>"); } document.write("</tr>"); document.write("<tr><td colspan='7' class='con_month'>"); today = new Date(); document.write("本日は" + today.getFullYear() + '年' + (today.getMonth()+1) + '月'+ new Date().getDate() + "日です"); document.write("</td></tr>"); document.write("</table>"); } //--> </SCRIPT> </HEAD> <BODY bgcolor="#FFFFFF" leftmargin="8" topmargin="8" marginwidth="0" marginheight="0"> <SCRIPT type=text/javascript> <!-- showCalendar(); //指定がなければ、本日の日付 //--> </SCRIPT> </BODY> </HTML>