效果图:CSS代码: 复主代码 代码如下: <br>*{ <br>여백:0; <br>패딩:0; <br>글꼴:10px 타호마; <br>} <br>#calender{ <br>text-align:center; <br>폭:147px; <br>글꼴 크기:10px; <br>/*색상: #27B0C1;*/ <br>여백:12px 0 12px 6px; <br>테두리 상단:1px 솔리드 #EEEEEE; <br>테두리 왼쪽:1px 단색 #EEEEEE; <br>} <br>#calender .arrow_over{ <br>색상: #FF1493; <br>} <br>#calender .arrow_out{ <br>색상: #FF8C00; <br>} <br>#calender td{ <br>border-bottom:1px solid #EEEEEE; <br>테두리 오른쪽: 1px 단색 #EEEEEE; <br>폭:21px; <br>높이:20px; <br>줄 높이:16px; <br>색상:#666666; <br>} <br>#calender #cal_title{ <br>너비:147px; 배경:#EFEFEF; <br>} <br>#calender #week td{ <br>배경: #F8F8F8; <br>} <br>#calender .current{ <br>배경: #AAE7E8; <br>디스플레이: 블록; <br>여백:2px; <br>} <br>#calender .notcurrent{ <br>디스플레이: 블록; <br>여백:2px; <br>배경:#EDEDED; <br>} <br> 脚本代码: 复代码 代码如下: <br><!-- <BR>document.writeln("<div id='calenderdiv' style>日历加载中...</div>"); <br>var press_tag; <br>functionchangecal(action,year,month) <br>{ <br>var strcal; <br>switch(action) <br>{ <br>case "nextmonth" : <br>if(월==11) <br>{ <br>월 = 1; <br>년 = 연*1 <br>}else{ <br>월 = 월*1 2; >} <br>strcal = "<span onmouseover="this.className='arrow_over'" onmouseout="this.className='arrow_out'" class='arrow_out' onclick='calender(" year "," Month " )' title='下一个月' style='커서:손;'>> "; <br>break; <br>case "premonth": <br>if(month==0) <br>{ <br>month = 12; <br>year = year*1 - 1; <br>} <br>strcal = "<span onmouseover="this.className='arrow_over'" onmouseout="this.className='arrow_out'" class='arrow_out' onclick='calender(" 년 " ,"월")' title='上一个月' style='cursor:hand;'> <</span>"; <br>break; <br>case "nextyear": <br>연도 = 연도*1 1; <br>월 = 월*1 1; <br>strcal = "< span onmouseover="this.className='arrow_over'" onmouseout="this.className='arrow_out'" class='arrow_out' onclick='calender(" 년 "," 월 ")' title='下一年' 스타일 ='cursor:hand;'>>></span>"; <br>break; <br>case "preyear": <br>연도 = 연도*1 - 1; <br>월 = 월 *1 1>strcal = "<span onmouseover="this.className='arrow_over'" onmouseout="this.className='arrow_out'" class='arrow_out' onclick='calender(" 연도 "," 월 ")' title='cursor:hand;'><<</span>" <br>break <br>기본값:; strcal = " " strcal " "; <br>return(strcal); <br>} <br>함수 달력(cyear,cmonth) <br>{ <br>var d,d_date,d_day,d_month; /정례每月天数数组 <br>var Monthdates = ["31","28","31","30","31","30","31","31","30"," 31","30","31"] <br>d = new Date(); <br>d_year = d.getYear(); //获取年份 <br>//判断闰月,把monthdates的2月改成29 <br>if (((d_year % 4 == 0) && (d_year % 100 != 0)) || (d_year % 400 == 0)) 월 날짜[1] = "29"; <br>if ((cyear != "" ) || (cmonth != "")) <br>{ <br>//如果用户选择了月份和年份,则当前的时间改为用户设定 <br>d.setYear(년); <br>d.setMonth(cmonth-1); <br>d.setDate(1); <br>} <br>d_month = d.getMonth(); //获取当前是第几个月 <br>d_year = d.getYear(); //获取年份 <br>d_date = d.getDate(); //获取日期 <br>//修正19XX年只显示两位的错误 <br>if(d_year<2000){d_year = d_year 1900} <BR>//===========출日历=========== <BR>var str; <BR>str = "<tablecellspacing='0'cellpadding='0'id='calender'>"; <br>str = "<tr><td id='cal_title' colspan='7' >" <br>str = Changecal("preyear",d_year,d_month) <br>str =changecal("premonth",d_year,d_month) <br>str = d_year " - " (d_month*1 1) <br>str = changecal("nextmonth",d_year,d_month) <br>str =changecal("nextyear",d_year,d_month) <br>str = "</td></tr>"; <br>str = "<tr id='week'><td>Su</td><td>Mo</td><td>Tu</td><td>We</ td><td>Th</td> <td>Fr</td> <td>Sa</td>"; <br>str = "<tr>"; <br>var firstday,lastday,totalcounts,firstspace,lastspace,monthdays; <br>//需要显示的月份共有几天, 可以用已已取 <br>monthdays = Monthdates[d.getMonth()]; <br>//정일일정은 월간 중일일 <br>d.setDate(1); <br>//需要显示的月份的第一天是星期几 <br>firstday = d.getDay(); <br>//1号前side需要补足적의 공간 <br>firstspace = firstday; <br>//정해진 날짜는 1월 1일입니다 <br>d.setDate(monthdays); <br>//需要显示的月份的最后一天是星期几 <br>lastday = d.getDay(); <br>//最后一天后면需要空单元格数 <br>lastspace = 6 - lastday; <br>//前공공单원格 总天数 后공单원格,사용来控제循环 <br>총 개수 = 첫 번째 스페이스*1 월 일*1 마지막 스페이스*1; <br>//count:大循环的变weight;f_space:输出前 空单元格的循环变weight;l_space:用于输流后空单元格的循环变weight <br>var count,flag,f_space,l_space; <br>//flag:前空单元格输完后令flag=1不再继续做这个小循环 <br>flag = 0; <br>for(count=1;count<=totalcounts;count ) <br>{ <br>//一开始flag=0,首先输流前空单元格,输完以后flag=1,以后将不再执行这个循环 <br>if(flag==0) <br>{ <br>if(firstspace!=0) <br>{ <br>for(f_space=1;f_space<=firstspace;f_space ) <br>{ <br>str = "<td> </td>"; <br>if(f_space!= firstspace) 개수 ; <br>} <br>플래그 = 1; <br>계속; <br>} <br>}<br>if((count-firstspace)<=monthdays) <br>{ <br>//월의 모든 날짜를 출력<br>curday = d_year "," (d_month*1 1) "," ( count - firstspace) "|" <br>linkday = d_year "," (d_month*1 1) "," (count - firstspace) <br>var today = new Date() <br>if( (d_year == today .getYear()) && (d_month == today.getMonth()) && ((count-firstspace) == today.getDate()) ) <br>{ <br>//현재 일 수를 강조 표시합니다. 로컬 시스템 <br>str = "<td><span class='current'>" (count - 첫 번째 공간) "</span></td>" <br>}else{ <br> // 강조 표시된 부분 없음, 로그 없음<br>str = "<td>" (count - firstspace) "</td>" <br>if(count%7==0) <br>{ <br>if(count<totalcounts) <br>{ <br>str = "</tr><tr>" <br>}else{ <br>str = "</tr>" ; <br>} <br>} <br>}else{ <br>//월말이 출력되었으면 출력을 시작하고 빈 셀을 채웁니다. <br>for(l_space=1;l_space<= lastspace;l_space ) <br>{ <br>str = "<td> </td>" <br>if(l_space!= lastspace) count <br>} <br>continue; <br>} <br>str = "<tr><td colspan='7' style='text-indent:9px;'><a href='http://www.jb51.net' title='웹사이트 디자인'>www.sugood.cn</a></td></tr></table>" <br>document.getElementById("calenderdiv").innerHTML = "< div id='calenderdiv'>" str "</div>"; <br>} <br>//함수 호출 <br>calender("","") <br>//--> <br>