首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

一个简略的日历控件

2012-10-28 
一个简单的日历控件附件提供了完整的演示文档。目前只支持IE。?var CALT_MONTH_LENGTH [31,28,31,30,31,30

一个简单的日历控件

附件提供了完整的演示文档。目前只支持IE。

?

var CALT_MONTH_LENGTH = [31,28,31,30,31,30,31,31,30,31,30,31]; //平年的月份天数var CALT_LEAP_MONTH_LENGTH = [31,29,31,30,31,30,31,31,30,31,30,31];  //闰年的月份天数/** * 判断某年是否是闰年 * @param $year */function isLeapYear($year) {    return (($year % 4 == 0) && (($year % 100 != 0) || ($year % 400 == 0)));}/** * 获取某年某月的天数 * @param $month * @param $year */function monthLength($month, $year) {    return isLeapYear($year) ? CALT_LEAP_MONTH_LENGTH[$month] : CALT_MONTH_LENGTH[$month];}/** * 根据给定的年份和月份绘制日历 * @param year   给定的年份 * @param month  给定的月份 * @return  日历 */function paintCalendar(year,month){    var time=new Date();    time.setYear(year);    time.setMonth(month-1);    var monthLen=monthLength(month-1,year);    var count=0;    var sb=[];    sb.push("<tr>");    for(var i=1;i<=monthLen;i++){        time.setDate(i);        var week=time.getDay();        if(0==week && i==1){   //1号恰好是星期日            sb.push(createTableTD(6));            sb.push("<td>");            sb.push(i);            sb.push("</td>");            count=7;        }else{            if(i!=1){                sb.push("<td>");                sb.push(i);                sb.push("</td>");                count++;            }else{                sb.push(createTableTD(week-1));                sb.push("<td>");                sb.push(i);                sb.push("</td>");                count += week;            }        }        if(count==7){            count=0;            sb.push("</tr>");            if(i!=monthLen){                sb.push("<tr>");            }        }        if(i==monthLen){            sb.push(createTableTD(7-count));            sb.push("</tr>");        }    }    return sb.join("");}function createTableTD(lows){    var tmp=[];    for(var i=0;i<lows;i++){        tmp.push("<td></td>");    }    return tmp.join("");}

热点排行