天天看点

一步一步理解日历calendar(二)

新增功能:

      1、增加了上一年,下一年,上个月,下个月,今天功能。

      2、今天着重显示。

效果如下图展示:

一步一步理解日历calendar(二)

      // 根据给定的参数year、month,返回某年某月的天数

      //例如: MaxDayOfDate(2012,1)    结果:31

            function MaxDayOfDate(year, month) {

                switch (month) {

                    case 1:

                    case 3:

                    case 5:

                    case 7:

                    case 8:

                    case 10:

                    case 12:

                        return 31;

                    case 4:

                    case 6:

                    case 9:

                    case 11:

                        return 30;

                    case 2:

                        if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {

                            return 29;

                        }

                        else {

                            return 28;

                    default:

                        return 0;

                }

            }

     //参数d是日期Date类型,根据年份与月份返回某年某月的第一天

     //例如:假如今天是:2012年1月16日 ,GetStartDate(new Date())   结果:Date类型 2012-1-1

            function GetStartDate(d) { 

                d.setDate(1);

                return d;

     //参数d是日期Date类型,根据年份与月份返回某年某月的最后一天

     //例如:假如今天是:2012年1月16日 ,GetStartDate(new Date())   结果:Date类型 2012-1-31

            function GetEndDate(d) {  

                var totalDays = MaxDayOfDate(parseInt(d.getFullYear()), parseInt(d.getMonth() + 1));

                d.setDate(totalDays);

一步一步理解日历calendar(二)
一步一步理解日历calendar(二)

View Code

继续阅读