js 日历

<SCRIPT LANGUAGE="JavaScript">
<!--
//获取当前系统时间
function 获取当前时间()
{
        var 
日期对象 = new Date();        //声明一个日期对象
        
var 小时 日期对象.getHours();        //获取当前时
        
var 分钟 日期对象.getMinutes();//获取当前分
        
var 上下午;        //上午下午

        //判断上下午
        
if (小时 >= 12)
        {
                
小时 -= 12;
                
上下午 "下午";
        }
        else
        {
                
上下午 "上午";
        }
        
        
小时 = (小时 == 0)?12:小时;        //判断是否为0时

        //分钟数小于10则补零
        
if (分钟 10)
        {
                
分钟 "0" 分钟;
        }
        return (
小时 ':' 分钟 '' 上下午);
}

function 
是否为闰年(年份)
{
        if (
年份%4==0)        //年份能被4整除为闰年
        
{
                return 
true;
        }
        else
        {
                return 
false;
        }
}
//获取选择月对应的实际天数
function getDays(月份,年份)
{
        
//设定每月的实际天数(12个月中只有2月会在闰年和非闰年时天数不同)
        
var 天数 = new Array(12);
        
天数[0] = 31;
        
天数[1] = (是否为闰年(年份))?29:28;        //2月份时闰年为29天,否则为28天
        
天数[2] = 31;
        
天数[3] = 30;
        
天数[4] = 31;
        
天数[5] = 30;
        
天数[6] = 31;
        
天数[7] = 31;
        
天数[8] = 30;
        
天数[9] = 31;
        
天数[10] = 30;
        
天数[11] = 31;
        return 
天数[月份];
}

//获取月名称
function 获取月份名称(月份)
{
        var 
月份名称 = new Array(12);
        
月份名称[0] = "1月";
        
月份名称[1] = "2月";
        
月份名称[2] = "3月";
        
月份名称[3] = "4月";
        
月份名称[4] = "5月";
        
月份名称[5] = "6月";
        
月份名称[6] = "7月";
        
月份名称[7] = "8月";
        
月份名称[8] = "9月";
        
月份名称[9] = "10月";
        
月份名称[10] = "11月";
        
月份名称[11] = "12月";
        return 
月份名称[月份];
}

//设置日历参数
function 设置日历()
{
        var 
日期对象 = new Date();
        var 
年份 日期对象.getYear();        //获取当前时间年份
        
var 月份 日期对象.getMonth(); //获取当前时间月份
        
var 月份名称 获取月份名称(月份);        //获取月份名称
        
var 当前日 日期对象.getDate();        //获取当前日期中的日

        
var 当月第一天的星期数 = (new Date(年份,月份,1)).getDay();  //获取本月的第一天对应的星期数

        
var 本月天数 getDays(月份,年份);        //获取当前日期天数(也是当月对应的最后一天)

        //显示日历
        
显示日历(当月第一天的星期数+1,本月天数,当前日,月份名称,年份);
}
//显示日历
function 显示日历(当月第一天的星期数,本月天数,当前日,月份名称,年份)
{
        var 
日历结构体 "";
        
日历结构体 += '<TABLE border=1 cellspacing=1>';
        
日历结构体 += '<TH colspan=7 height=25>';
        
日历结构体 += 年份+'年'+月份名称;
        
日历结构体 += 获取当前时间();
        
日历结构体 += '</TH>';

        var 
打开单元格 '<TD width=15 height=12>';
        var 
关闭单元格 '</TD>';

        var 
星期数组 = new Array(7);
        
星期数组[0] = "日";
        
星期数组[1] = "一";
        
星期数组[2] = "二";
        
星期数组[3] = "三";
        
星期数组[4] = "四";
        
星期数组[5] = "五";
        
星期数组[6] = "六";

        
日历结构体 += '<TR align=center valign=center>';
        for (var 
变量=0;变量 7;++变量)
        {
                
日历结构体 += 打开单元格 星期数组[变量] + 关闭单元格;
        }
        
日历结构体 += '</TR>';

        var 
日 1;                //显示日
        
var 单元格位置 1;        //单元格定位

        
for (var =1;<=Math.ceil((本月天数+当月第一天的星期数-1)/7);++)
        {
                
日历结构体 += '<TR align=right valign=top>';
                for (var 
=1;<=7;++)
                {
                        if (
>本月天数)
                        {
                                break;
                        }
                        if (
单元格位置<当月第一天的星期数)
                        {
                                
日历结构体 += '<TD> </TD>';
                                
单元格位置++;
                        }
                        else
                        {
                                if (
==当前日)        //如果日期为当天则用红色加粗显示
                                
{
                                        
日历结构体 += '<TD height=20>';
                                        
日历结构体 += '<FONT color=red><B>';
                                        
日历结构体 += ;
                                        
日历结构体 += '</B></FONT><BR>';
                                        
日历结构体 += '</TD>';
                                }
                                else
                                {
                                        
日历结构体 += '<TD height=20>'++'</TD>';
                                }
                                
++;
                        }
                }
                
日历结构体 += '</TR>';
        }
        
日历结构体 += '</TABLE>';
        
document.write(日历结构体);
}
设置日历();
//-->
</SCRIPT> 
posted on 2009-01-05 17:04  sherry  阅读(3531)  评论(2编辑  收藏  举报