TOP /すぐに使えるJavaScript カレンダー(2003年〜2006年祝日対応)


<script type="text/javascript" src="calender2.js">
</script>
calender2.js
document.writeln("<style type=text/css><!--");
document.writeln("td{ text-align: center;height:22;}");
document.writeln("td.tuki{cursor:pointer;color:#ffffff;font-size:10pt;background-color:#ddaa66;}");
document.writeln("--></style>");

document.write("<table border=1 cellspacing=0><tr>");
document.write("<td class='tuki'onclick='Fore()'>前月</td>");
document.write("<td ID='midasi' bgcolor='#ddddff'></td>");
document.write("<td class='tuki'onclick='Next()'>次月</td>");
document.write("</tr><tr><td colspan=3><table>");
WeekTd = new Array("日","月","火","水","木","金","土"); 
for(i=0;i<7;i++){
(!i)?document.write("<td bgcolor='#ff66bb'width=24>"+WeekTd[i]+"</td>"):
document.write("<td bgcolor='#ddddff'width=24>"+WeekTd[i]+"</td>");
}
for(i=0;i<42;i++){
if(!(i%7))document.write("</tr><tr>"); 
document.write("<td ID='DayTd"+i+"'>&nbsp;</td>");
}
document.write("</tr></table></tr></table>");    
    
dd = new Date();
yy = new Date().getFullYear();
mm = new Date().getMonth();
mmdd = new Array(31,28,31,30,31,30,31,31,30,31,30,31);

holiday_03 = new Array();   //2003
holiday_03[0]=new Array(1,13);
holiday_03[1]=new Array(11,99);
holiday_03[2]=new Array(21,99);
holiday_03[3]=new Array(29,99);
holiday_03[4]=new Array(3,5);
holiday_03[5]=new Array();
holiday_03[6]=new Array(21,99);
holiday_03[7]=new Array();
holiday_03[8]=new Array(15,23);
holiday_03[9]=new Array(13,99);
holiday_03[10]=new Array(3,24);
holiday_03[11]=new Array(23,99);

holiday_04 = new Array();   //2004
holiday_04[0]=new Array(1,12);
holiday_04[1]=new Array(11,99);
holiday_04[2]=new Array(20,99);
holiday_04[3]=new Array(29,99);
holiday_04[4]=new Array(3,4,5);
holiday_04[5]=new Array();
holiday_04[6]=new Array(19,99);
holiday_04[7]=new Array();
holiday_04[8]=new Array(20,23);
holiday_04[9]=new Array(11,99);
holiday_04[10]=new Array(3,23);
holiday_04[11]=new Array(23,99);

holiday_05 = new Array();   //2005
holiday_05[0]=new Array(1,10);
holiday_05[1]=new Array(11,99);
holiday_05[2]=new Array(20,21);
holiday_05[3]=new Array(29,99);
holiday_05[4]=new Array(3,4,5);
holiday_05[5]=new Array();
holiday_05[6]=new Array(18,99);
holiday_05[7]=new Array();
holiday_05[8]=new Array(19,23);
holiday_05[9]=new Array(10,99);
holiday_05[10]=new Array(3,23);
holiday_05[11]=new Array(23,99);

holiday_06 = new Array();   //2006
holiday_06[0]=new Array(1,2,9);
holiday_06[1]=new Array(11,99);
holiday_06[2]=new Array(21,99);
holiday_06[3]=new Array(29,99);
holiday_06[4]=new Array(3,4,5);
holiday_06[5]=new Array();
holiday_06[6]=new Array(17,99);
holiday_06[7]=new Array();
holiday_06[8]=new Array(18,23);
holiday_06[9]=new Array(9,99);
holiday_06[10]=new Array(3,23);
holiday_06[11]=new Array(23,99);

function Now(){
if ((!(yy%4) && yy%100) || !(yy%400)){mmdd[1] = 29;}else{mmdd[1] =28;}
dd.setDate(1);
fWeek = dd.getDay()-1;
setday=0;
(mm<9)?Mm="0"+(mm+1):Mm=mm+1;
if(document.all){document.all("midasi").innerText =yy+"/"+Mm;
}else{document.getElementById("midasi").innerHTML =yy+"/"+Mm;}
for(i=0;i<42;i++){
set_day=(i>fWeek && i<=(mmdd[mm]+fWeek))?++setday:"&nbsp;";
Dayobj=(document.all)?document.all("DayTd"+i):document.getElementById("DayTd"+i);
    Dayobj.innerHTML =set_day;
    Dayobj.style.backgroundColor="#ffffff";
    Dayobj.style.textDecoration="none";
if(!(i%7))Dayobj.style.color="#ff66bb";
if(i%7==6)Dayobj.style.color="#77aaff";
if(setday == new Date().getDate() && yy == new Date().getFullYear() && mm == new Date().getMonth())
    Dayobj.style.textDecoration="underline";

for(j=0;j<holiday_03[mm].length; j++)  //2003
if(holiday_03[mm][j]==(i-fWeek) && yy==2003)Dayobj.style.backgroundColor="#ffccff";
for(j=0;j<holiday_04[mm].length; j++)  //2004
if(holiday_04[mm][j]==(i-fWeek) && yy==2004)Dayobj.style.backgroundColor="#ffccff";
for(j=0;j<holiday_05[mm].length; j++)  //2005
if(holiday_05[mm][j]==(i-fWeek) && yy==2005)Dayobj.style.backgroundColor="#ffccff";
for(j=0;j<holiday_06[mm].length; j++)  //2006
if(holiday_06[mm][j]==(i-fWeek) && yy==2006)Dayobj.style.backgroundColor="#ffccff";

}
}
function Next(){
if(mm==11){yy++;mm=0;}else{mm++;}
dd.setFullYear(yy);
dd.setMonth(mm);
Now();
}
function Fore(){
if(mm==0){yy--;mm=11;}else{mm--;}
dd.setFullYear(yy);
dd.setMonth(mm);
Now();
}
Now();/* himajin.moo.jp */