JS文件(birthday.js): // JavaScript Document // 日历 var date_start,date_end,g_object var today = new Date(); var separator = " - " ; var inover = false ; // mode :时间变换的类型0-年 1-月 2-直接选择月 function change_date(temp,mode) ... {var t_month,t_yearif (mode)...{if(mode==1)t_month=parseInt(cele_date_month.value,10)+parseInt(temp,10);elset_month=parseInt(temp)if (t_month<cele_date_month.options(0).text) ...{cele_date_month.value=cele_date_month.options(cele_date_month.length-1).text;change_date(parseInt(cele_date_year.value,10)-1,0);}else...{if (t_month>cele_date_month.options(cele_date_month.length-1).text)...{cele_date_month.value=cele_date_month.options(0).text;change_date(parseInt(cele_date_year.value,10)+1,0);} else...{cele_date_month.value=t_month;set_cele_date(cele_date_year.value,cele_date_month.value); }}} else...{t_year=parseInt(temp,10);if (t_year<cele_date_year.options(0).text) ...{cele_date_year.value=cele_date_year.options(0).text;set_cele_date(cele_date_year.value,1); }else...{if (parseInt(t_year,10)>parseInt(cele_date_year.options(cele_date_year.length-1).text,10))...{cele_date_year.value=cele_date_year.options(cele_date_year.length-1).text;set_cele_date(cele_date_year.value,12); } else...{cele_date_year.value=t_year;set_cele_date(cele_date_year.value,cele_date_month.value); }}}window.cele_date.focus();} // 初始化日历 function init(d_start,d_end) ... {var temp_str;var i=0var j=0date_start=new Date(1980,7,1)date_end=new Date(2004,8,1)document.writeln("<div name="cele_date" id="cele_date" style="display:none" style="LEFT: 69px; POSITION: absolute; TOP: 159px;Z-INDEX:99" onClick="event.cancelBubble=true;" onBlur="hilayer()" onMouseout="lostlayerfocus()">-</div>");window.cele_date.innerHTML="";temp_str="<table border="1" bgcolor="#DDDDDD" bordercolor="white"><tr><td colspan=7 οnmοuseοver="overcolor(this)">";temp_str+="<input type="Button" value="<<" οnclick="change_date(-1,1)" οnmοuseοver="getlayerfocus()" style="color: #000099; background-color: #BFBFBF; cursor: hand">-";temp_str+=""temp_str+="<select name="cele_date_year" id="cele_date_year" language="javascript" οnchange="change_date(this.value,0)" οnmοuseοver="getlayerfocus()" οnblur="getlayerfocus()" style="font-size: 9pt; border: 1px #666666 outset; background-color: #F4F8FB">"for (i=1900;i<=2020;i++)...{temp_str+="<OPTION value=""+i.toString()+"">"+i.toString()+"</OPTION>";}temp_str+="</select>-";temp_str+=""temp_str+="<select name="cele_date_month" id="cele_date_month" language="javascript" οnchange="change_date(this.value,2)" οnmοuseοver="getlayerfocus()" οnblur="getlayerfocus()" style="font-size: 9pt; border: 1px #666666 outset; background-color: #F4F8FB">"for (i=1;i<=12;i++)...{temp_str+="<OPTION value=""+i.toString()+"">"+i.toString()+"</OPTION>";}temp_str+="</select>-";temp_str+=""temp_str+="<input type="Button" value=">>" οnclick="change_date(1,1)" οnmοuseοver="getlayerfocus()" style="color: #000099; background-color: #BFBFBF; cursor: hand">";temp_str+="</td></tr><tr><td οnmοuseοver="overcolor(this)">"temp_str+="<font color=red>日</font></td><td>";temp_str+="一</td><td>"; temp_str+="二</td><td>"; temp_str+="三</td><td>"temp_str+="四</td><td>";temp_str+="五</td><td>"; temp_str+="六</td></tr>";for (i=1 ;i<=6 ;i++)...{temp_str+="<tr>";for(j=1;j<=7;j++)...{temp_str+="<td name="c"+i+"_"+j+""id="c"+i+"_"+j+"" style="CURSOR: hand" style="COLOR:#000000" language="javascript" οnmοuseοver="overcolor(this)" οnmοuseοut="outcolor(this)" οnclick="td_click(this)">?</td>"}temp_str+="</tr>" }temp_str+="</td></tr></table>";window.cele_date.innerHTML=temp_str;} function set_cele_date(year,month) ... {var i,j,p,kvar nd=new Date(year,month-1,1);event.cancelBubble=true;cele_date_year.value=year;cele_date_month.value=month; k=nd.getDay()-1var temp;for (i=1;i<=6;i++)for(j=1;j<=7;j++)...{eval("c"+i+"_"+j+".innerHTML=""");eval("c"+i+"_"+j+".bgColor="#DDDDDD"");eval("c"+i+"_"+j+".style.cursor="hand"");}while(month-1==nd.getMonth())...{ j=(nd.getDay() +1);p=parseInt((nd.getDate()+k) / 7)+1;eval("c"+p+"_"+j+".innerHTML="+"""+nd.getDate()+""");if ((nd.getDate()==today.getDate())&&(cele_date_month.value==today.getMonth()+1)&&(cele_date_year.value==today.getYear()))...{eval("c"+p+"_"+j+".bgColor="#EFFB64"");}if (nd>date_end || nd<date_start)...{eval("c"+p+"_"+j+".bgColor="#FF9999"");eval("c"+p+"_"+j+".style.cursor="text"");}nd=new Date(nd.valueOf() + 86400000)}} // 续