• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
内蒙古峰回路转armyfeng
博客园    首页    新随笔    联系   管理    订阅  订阅

制作带有农历的js代码



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";    //354 
var year2000="30;30;29;29;30;29;29;30;29;30;30;29";    //354 
var year2001="30;30;29;30;29;30;29;29;30;29;30;29;30";    //384 
var year2002="30;30;29;30;29;30;29;29;30;29;30;29";    //354 
var year2003="30;30;29;30;30;29;30;29;29;30;29;30";    //355 
var year2004="29;30;29;30;30;29;30;29;30;29;30;29;30";    //384 
var year2005="29;30;29;30;29;30;30;29;30;29;30;29";    //354 
var year2006="30;29;30;29;30;30;29;29;30;30;29;29;30"; 
var month1999="正月;二月;三月;四月;五月;六月;七月;八月;九月;十月;十一月;十二月" 
var month2001="正月;二月;三月;四月;闰四月;五月;六月;七月;八月;九月;十月;十一月;十二月" 
var month2004="正月;二月;闰二月;三月;四月;五月;六月;七月;八月;九月;十月;十一月;十二月" 
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="星期日"; 
if (ww==1) ww="星期一"; 
if (ww==2) ww="星期二"; 
if (ww==3) ww="星期三"; 
if (ww==4) ww="星期四"; 
if (ww==5) ww="星期五"; 
if (ww==6) 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]); 
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];
document.write(bsDate
+bsDate2+"日 ");
document.write(bsWeek
+"  ");
document.write(bsYear
+" "+bsYear2);
posted @ 2006-10-28 23:02  老冯  阅读(451)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3