文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>JavaScript带有农历的日历

JavaScript带有农历的日历

时间:2008-05-22  来源:linux_wuliqiang

本实例使用JavaScript制作一个简单的日历,该日历可以显示当前的年份、月份、日期和中国传统的农历,并将今天的日期设置为红色。具体实现代码如下:

……

<script language="JavaScript">

var bsYear;

var bsDate;

var bsWeek;

var arrLen=8; <!--数组长度-->

var sValue=0; <!--当年的秒数 -->

var dayiy=0; <!--当年第几天 -->

var miy=0; <!--月份的下标 -->

var iyear=0; <!--年份标记 -->

var dayim=0; <!--当月第几天 -->

var spd=86400; <!--每天的秒数 -->

var year1999="30;29;29;30;29;29;30;29;30;30;30;29"; <!--1999年354天-->

var year2000="30;30;29;29;30;29;29;30;29;30;30;29"; <!--2000年354天-->

var year2001="30;30;29;30;29;30;29;29;30;29;30;29;30"; <!--2001年384天-->

var year2002="30;30;29;30;29;30;29;29;30;29;30;29"; <!--2002年354天-->

var year2003="30;30;29;30;30;29;30;29;29;30;29;30"; <!--2003年355天-->

var year2004="29;30;29;30;30;29;30;29;30;29;30;29;30"; <!--2004年384天-->

var year2005="29;30;29;30;29;30;30;29;30;29;30;29"; <!--2005年354天-->

var year2006="30;29;30;29;30;30;29;29;30;30;29;29;30";

<!--1999年农历月份表-->

var month1999="正月;二月;三月;四月;五月;六月;七月;八月;九月;十月;十一月;十二月"

<!--2001年农历月份表-->

var month2001="正月;二月;三月;四月;闰四月;五月;六月;七月;八月;九月;十月;十一月;十二月"

<!--2004年农历月份表-->

var month2004="正月;二月;闰二月;三月;四月;五月;六月;七月;八月;九月;十月;十一月;十二月"

<!--2006年农历月份表-->

var month2006="正月;二月;三月;四月;五月;六月;七月;闰七月;八月;九月;十月;十一月;十二月"

<!--农历日历表-->

var Dn="初一;初二;初三;初四;初五;初六;初七;初八;初九;初十;十一;十二;十三;十四;十五;十六;十七;十八;十九;二十;廿一;廿二;廿三;廿四;廿五;廿六;廿七;廿八;廿九;三十";

var Ys=new Array(arrLen);

<!--计算每一年的秒数-->

Ys[0]=919094400;Ys[1]=949680000;Ys[2]=980265600;

Ys[3]=1013443200;Ys[4]=1044028800;Ys[5]=1074700800;

Ys[6]=1107878400;Ys[7]=1138464000;

var Yn=new Array(arrLen); <!--定义变量,农历年的名称-->

Yn[0]="己卯年";Yn[1]="庚辰年";Yn[2]="辛巳年";

Yn[3]="壬午年";Yn[4]="癸未年";Yn[5]="甲申年";

Yn[6]="乙酉年";Yn[7]="丙戌年";

var D=new Date(); <!--获得当前日期-->

var yy=D.getYear(); <!--获得当前年-->

var mm=D.getMonth()+1; <!--获得当前月份-->

var dd=D.getDate(); <!--获得当前日期-->

var ww=D.getDay(); <!--获得当前日子-->

if (ww==0) ww="<font color=RED>星期日";

if (ww==1) ww="星期一";

if (ww==2) ww="星期二";

if (ww==3) ww="星期三";

if (ww==4) ww="星期四";

if (ww==5) ww="星期五";

if (ww==6) ww="<font color=RED>星期六";

ww=ww; <!--将ww换成“星期几”的方式表示-->

var ss=parseInt(D.getTime() / 1000);

if (yy<100) yy="19"+yy; <!--将年份转换为标准形式-->

for (i=0;i<arrLen;i++)

if (ss>=Ys[i])

{

iyear=i;

sValue=ss-Ys[i]; <!--得到当年的秒数-->

}

dayiy=parseInt(sValue/spd)+1; <!--得到当年的天数-->

var dpm=year1999; <!--根据不同的年份,选择不同的农历月份日子表-->

if (iyear==1) dpm=year2000;

if (iyear==2) dpm=year2001;

if (iyear==3) dpm=year2002;

if (iyear==4) dpm=year2003;

if (iyear==5) dpm=year2004;

if (iyear==6) dpm=year2005;

if (iyear==7) dpm=year2006;

dpm=dpm.split(";");

var Mn=month1999; <!--根据不同的年份,选择不同的农历月份表-->

if (iyear==2) Mn=month2001;

if (iyear==5) Mn=month2004;

if (iyear==7) Mn=month2006;

Mn=Mn.split(";");

var Dn="初一;初二;初三;初四;初五;初六;初七;初八;初九;初十;十一;十二;十三;十四;十五;十六;十七;十八;十九;二十;廿一;廿二;廿三;廿四;廿五;廿六;廿七;廿八;廿九;三十";

Dn=Dn.split(";");

dayim=dayiy;

var total=new Array(13); <!--定义变量-->

total[0]=parseInt(dpm[0]);

<!--得到total的值,用来计算农历的日期和月份-->

for (i=1;i<dpm.length-1;i++) total[i]=parseInt(dpm[i])+total[i-1];

for (i=dpm.length-1;i>0;i--);

if (dayim>total[i-1])

{

dayim=dayim-total[i-1]; <!--对农历的日期进行赋值-->

miy=i; <!--对农历的月份进行赋值-->

}

bsWeek=ww; <!--定义变量,记录星期-->

bsDate=yy+"年"+mm+"月"; <!--定义变量记录年和月-->

bsDate2=dd;

bsYear="农历"+Yn[iyear]; <!--得到农历的年份-->

<!---将农历的月份和日合成一个新的变量-->

bsYear2=Mn[miy]+Dn[dayim-1];

if (ss>=Ys[7]||ss<Ys[0]) bsYear=Yn[7];

function CAL()

{

<!--画第一行表格-->

document.write("<table border='1' cellspacing='3' width='105' bordercolor='#000000' bgcolor='#FFFFFF' height='110' cellpadding='2' ");

<!--输出日期-->

document.write("<tr><td align='center'><b><font color=#008040>"+bsDate+"</font><br><font face= 'Arial' size='6' color=#FF8040>"+bsDate2+"</font><br><font color=#008040><span style='font-size: 10.5pt'>");

<!--输出星期-->

document.write(bsWeek+"</span><br>"+"<br></b><font color=#9B4E00>");

<!--输出农历-->

document.write(bsYear+"<br>"+bsYear2+"</td></tr></table>");

}

</script>

<script language="JavaScript">CAL();</script>

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载