java日历当天日期标红

时间:2022-10-06 01:44:20 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。
java日历当天日期标红

练习一个日历例子,输出一个日历,显示当前日期为红色 主要的理解和掌握点是:

1、使用Date()函数。

2、根据天数计算日历的长度,主要是行,因为列是固定的,一周只有7天。

3、根据天数计算各天放置的单元格位置。 4、每月第一天的特殊处理。

5很多时候是从索引0开始计算,例如0-11代表12个月之类。 6、一个包括12个月的天数的数组。 function is_leap(year){

return(year%100==0?res=(year%400==0?1:0):res=(year%4==01:0));

}//是否为闰年

var nstr=new Date();//当前Date资讯 var ynow=nstr.getFullYear();//年份 var mnow=nstr.getMonth();//月份 var dnow=nstr.getDate();//今日日期

var n1str=new Date(ynowmnow1);//传入获取到的年月,并且日设置为1,获取当月的第一天的日期信息

var firstday=n1str.getDay();//当月第一天星期几 var m_days=new Array(3128+is_leap(ynow)313031


30313130313031);//各月份的总天数

//月份天数+第一天星期几除以7,获取整数行数,然后取整,得到表格所需要行数,即这个月的天数需要排多少行

var tr_str=Math.ceil((m_days[mnow]+firstday)/7); //打印表格第一行(有星期标志)(表头) document.write("

border='1'align='center'width='220'cellspacing='0'>");

//举例是201612月,有31

for(var i=0;i表格的行,根据当前月份的天数来确定这个月要排多少行

document.write("
");//表格的行开始

for(var k=0;k<7;k++){//表格每行的单元格,每行只有7格,0-6

//单元格自然序列号,当前行号乘以7再加上当前行的空格号 idx=i*7+k;//例如第一行的第一格就是0x7+0=0

date_str=idx-firstday+1;//计算日期,例如第一行第一格就是0-当月的第一天(目前当月第一天是周四即4)+1等于-3是一个负数,负数会显示空格(参看下面)


//控制日期的值在不同的星期里面显示,如果20号是周一的话,那么就要放在周一的列里面,如此类推

(date_str<=0||date_str>m_days[mnow])//过滤无效日期(小于等于零的、大于月总天数的)

date_str=" "//显示空格 :date_str=idx-firstday+1; //打印日期:今天底色为红 date_str==dnow document.write("")

:document.write("");

}

document.write("");//表格的行结束 }

document.write("
align='center'>align='center'>align='center'>align='center'>


align='center'bgcolor='red'>"+date_str+"


align='center'>"+date_str+"
");//
表格结束


本文来源:https://www.wddqw.com/doc/c18034e3ae51f01dc281e53a580216fc710a5371.html