1.简单用法

<div align="center"> 
<SCRIPT language=JavaScript src="js/calendar.js"></SCRIPT>
</div>

2.源文件calendar.js

---------------------------------------------------------------------------------------------------------------------

function RunGLNL(){

var today=new Date();


var week=new Array("星期日","星期一","星期二","星期三","星期四","星期五","星期六");


var DDDD=today.getFullYear()+"年"+(today.getMonth()+1)+"月"+today.getDate()+"日";


DDDD = DDDD + " " + week[today.getDay()];


DDDD = DDDD+ " " + (CnDateofDateStr(today));


document.write("<font color=#FFFFFF>"+ DDDD +"</font>");

}

function DaysNumberofDate(DateGL){


return parseInt((Date.parse(DateGL)-Date.parse(DateGL.getFullYear()+"/1/1"))/86400000)+1;

}

function CnDateofDate(DateGL){


var CnData=new Array(


0x16,0x2a,0xda,0x00,0x83,0x49,0xb6,0x05,0x0e,0x64,0xbb,0x00,0x19,0xb2,0x5b,0x00,


0x87,0x6a,0x57,0x04,0x12,0x75,0x2b,0x00,0x1d,0xb6,0x95,0x00,0x8a,0xad,0x55,0x02,


0x15,0x55,0xaa,0x00,0x82,0x55,0x6c,0x07,0x0d,0xc9,0x76,0x00,0x17,0x64,0xb7,0x00,


0x86,0xe4,0xae,0x05,0x11,0xea,0x56,0x00,0x1b,0x6d,0x2a,0x00,0x88,0x5a,0xaa,0x04,


0x14,0xad,0x55,0x00,0x81,0xaa,0xd5,0x09,0x0b,0x52,0xea,0x00,0x16,0xa9,0x6d,0x00,


0x84,0xa9,0x5d,0x06,0x0f,0xd4,0xae,0x00,0x1a,0xea,0x4d,0x00,0x87,0xba,0x55,0x04


);


var CnMonth=new Array();


var CnMonthDays=new Array();


var CnBeginDay;


var LeapMonth;


var Bytes=new Array();


var I;


var CnMonthData;


var DaysCount;


var CnDaysCount;


var ResultMonth;


var ResultDay;


var yyyy=DateGL.getFullYear();


var mm=DateGL.getMonth()+1;


var dd=DateGL.getDate();

if ((yyyy < 1997) || (yyyy > 2020)){


return 0;


}

Bytes[0] = CnData[(yyyy - 1997) * 4];


Bytes[1] = CnData[(yyyy - 1997) * 4 + 1];


Bytes[2] = CnData[(yyyy - 1997) * 4 + 2];


Bytes[3] = CnData[(yyyy - 1997) * 4 + 3];


if ((Bytes[0] & 0x80) != 0) {


CnMonth[0] = 12;


}else {


CnMonth[0] = 11;


}

CnBeginDay = (Bytes[0] & 0x7f);


CnMonthData = Bytes[1];


CnMonthData = CnMonthData << 8;


CnMonthData = CnMonthData | Bytes[2];


LeapMonth = Bytes[3];

for (I=15;I>=0;I--){


CnMonthDays[15 - I] = 29;


if (((1 << I) & CnMonthData) != 0 ){


 CnMonthDays[15 - I]++;


}


if (CnMonth[15 - I] == LeapMonth ){


 CnMonth[15 - I + 1] = - LeapMonth;


}else{


if (CnMonth[15 - I] < 0 ){


CnMonth[15 - I + 1] = - CnMonth[15 - I] + 1;


}else {


CnMonth[15 - I + 1] = CnMonth[15 - I] + 1;


}


if (CnMonth[15 - I + 1] > 12 ){


CnMonth[15 - I + 1] = 1;


}


}


}

DaysCount = DaysNumberofDate(DateGL) - 1;

if (DaysCount <= (CnMonthDays[0] - CnBeginDay)){


if ((yyyy > 1901) && (CnDateofDate(new Date((yyyy - 1)+"/12/31")) < 0)){


ResultMonth = - CnMonth[0];


}else {


ResultMonth = CnMonth[0];


}


ResultDay = CnBeginDay + DaysCount;


}else{


CnDaysCount = CnMonthDays[0] - CnBeginDay;


I = 1;


while ((CnDaysCount < DaysCount) && (CnDaysCount + CnMonthDays[I] < DaysCount)){


CnDaysCount+= CnMonthDays[I];


I++;


}


ResultMonth = CnMonth[I];


ResultDay = DaysCount - CnDaysCount;


}

if (ResultMonth > 0){


return ResultMonth * 100 + ResultDay;


}else{


return ResultMonth * 100 - ResultDay;


}

}

function CnYearofDate(DateGL){


var YYYY=DateGL.getFullYear();


var MM=DateGL.getMonth()+1;


var CnMM=parseInt(Math.abs(CnDateofDate(DateGL))/100);


if(CnMM>MM) YYYY--;


YYYY-=1864;


return CnEra(YYYY)+"年";

}

function CnMonthofDate(DateGL){


var CnMonthStr=new Array("零","正","二","三","四","五","六","七","八","九","十","十一","十二");


var Month;


Month = parseInt(CnDateofDate(DateGL)/100);


if (Month < 0){


return "闰" + CnMonthStr[-Month] + "月";


}else{


return CnMonthStr[Month] + "月";


}

}

function CnDayofDate(DateGL){


var CnDayStr=new Array("零",


"初一", "初二", "初三", "初四", "初五",


"初六", "初七", "初八", "初九", "初十",


"十一", "十二", "十三", "十四", "十五",


"十六", "十七", "十八", "十九", "二十",


"廿一", "廿二", "廿三", "廿四", "廿五",


"廿六", "廿七", "廿八", "廿九", "三十");


var Day;


Day = (Math.abs(CnDateofDate(DateGL)))%100;


return CnDayStr[Day];

}

function DaysNumberofMonth(DateGL){


var MM1=DateGL.getFullYear();


var MM2=MM1;


MM1+="/"+(DateGL.getMonth()+1);


MM2+="/"+(DateGL.getMonth()+2);


MM1+="/1";


MM2+="/1";


return parseInt((Date.parse(MM2)-Date.parse(MM1))/86400000);

}

function CnEra(YYYY){


var Tiangan=new Array("甲","乙","丙","丁","戊","己","庚","辛","壬","癸");


//var Dizhi=new Array("子(鼠)","丑(牛)","寅(虎)","卯(兔)","辰(龙)","巳(蛇)",


//"午(马)","未(羊)","申(猴)","酉(鸡)","戌(狗)","亥(猪)");


var Dizhi=new Array("子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥");


return Tiangan[YYYY%10]+Dizhi[YYYY%12];

}

function CnDateofDateStr(DateGL){


if(CnMonthofDate(DateGL)=="零月") return " 请调整您的计算机日期!";


else return "<font color='#FFFFFF'>"+CnYearofDate(DateGL)+ "" + CnMonthofDate(DateGL) + CnDayofDate(DateGL)+ "</font>";

}

function SolarTerm(DateGL){


var SolarTermStr=new Array(


"小寒","大寒","立春","雨水","惊蛰","春分",


"清明","谷雨","立夏","小满","芒种","夏至",


"小暑","大暑","立秋","处暑","白露","秋分",


"寒露","霜降","立冬","小雪","大雪","冬至");


var DifferenceInMonth=new Array(


1272060,1275495,1281180,1289445,1299225,1310355,


1321560,1333035,1342770,1350855,1356420,1359045,


1358580,1355055,1348695,1340040,1329630,1318455,


1306935,1297380,1286865,1277730,1274550,1271556);


var DifferenceInYear=31556926;


var BeginTime=new Date(1901/1/1);


BeginTime.setTime(947120460000);


for(;DateGL.getFullYear()<BeginTime.getFullYear();){


BeginTime.setTime(BeginTime.getTime()-DifferenceInYear*1000);


}


for(;DateGL.getFullYear()>BeginTime.getFullYear();){


BeginTime.setTime(BeginTime.getTime()+DifferenceInYear*1000);


}


for(var M=0;DateGL.getMonth()>BeginTime.getMonth();M++){


BeginTime.setTime(BeginTime.getTime()+DifferenceInMonth[M]*1000);


}


if(DateGL.getDate()>BeginTime.getDate()){


BeginTime.setTime(BeginTime.getTime()+DifferenceInMonth[M]*1000);


M++;


}


if(DateGL.getDate()>BeginTime.getDate()){


BeginTime.setTime(BeginTime.getTime()+DifferenceInMonth[M]*1000);


M==23?M=0:M++;


}


var JQ;


if(DateGL.getDate()==BeginTime.getDate()){


JQ=" 今天是<font color='#FFFFFF'><b>"+SolarTermStr[M] + "</b></font>";


}else if(DateGL.getDate()==BeginTime.getDate()-1){


JQ=" 明天是<font color='#FFFFFF'><b>"+SolarTermStr[M] + "</b></font>";


}else if(DateGL.getDate()==BeginTime.getDate()-2){


JQ=" 后天是<font color='#FFFFFF'><b>"+SolarTermStr[M] + "</b></font>";


}else{


JQ=" "


if(DateGL.getMonth()==BeginTime.getMonth()){


JQ+=" 本月";


}else{


JQ+=" 下月";


}


JQ+=BeginTime.getDate()+"日"+"<font color='#FFFFFF'><b>"+SolarTermStr[M]+"</b></font>";


}


return JQ;

}

RunGLNL();

--------------------------------------------------------------------------------------------------------------------------------------------------------

一个日期Js文件。 2013年10月12日 星期六 癸巳年九月初八的更多相关文章

  1. 系列文章:老项目的#iPhone6与iPhone6Plus适配#(持续更新中,更新日期2014年10月12日 星期日 )

    本文永久地址为http://www.cnblogs.com/ChenYilong/p/4020399.html ,转载请注明出处. ********************************** ...

  2. 北京Uber优步司机奖励政策(10月12日~10月18日)

    用户组:优步北京人民优步A组(适用于10月12日-10月18日) 滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万 ...

  3. 2016年10月29日 星期六 --出埃及记 Exodus 19:14

    2016年10月29日 星期六 --出埃及记 Exodus 19:14 After Moses had gone down the mountain to the people, he consecr ...

  4. 2016年10月22日 星期六 --出埃及记 Exodus 19:6

    2016年10月22日 星期六 --出埃及记 Exodus 19:6 you will be for me a kingdom of priests and a holy nation.' These ...

  5. 2016年10月15日 星期六 --出埃及记 Exodus 18:26

    2016年10月15日 星期六 --出埃及记 Exodus 18:26 They served as judges for the people at all times. The difficult ...

  6. 2016年10月12日 星期三 --出埃及记 Exodus 18:23

    2016年10月12日 星期三 --出埃及记 Exodus 18:23 If you do this and God so commands, you will be able to stand th ...

  7. 2016年11月12日 星期六 --出埃及记 Exodus 20:3

    2016年11月12日 星期六 --出埃及记 Exodus 20:3 "You shall have no other gods before me.除了我以外,你不可有别的 神.

  8. 2016年10月12日--string、Math类、Random随机数、DateTime、异常保护

    string string.length; //得到string长度 string.Trim(); //去掉string前后的空格 string.TrimStart(); //去掉string前的空格 ...

  9. Android学习2013年10月11日

    1.LinearLayout http://www.cnblogs.com/salam/archive/2010/10/20/1856793.html LinearLayout是线性布局控件,它包含的 ...

随机推荐

  1. 关于myeclipse代码提示的一些问题

    默认是  .xxx  输入点提示,要写注释 @xxx的时候怎么输入@后面有代码提示呢? Auto activation delay 是代码提示出现的速度  下面一行是出现代码提示的条件 我们在.后面加 ...

  2. 【CentOS】设置静态IP

      问题描述:         CentOS配置静态IP   问题解决:         (1)修改IP--修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth ...

  3. Flash Attribute

    参考:http://www.open-open.com/lib/view/open1397266120028.html 为解决POST/Forward/GET出现的重复提交数据问题,改用POST/Re ...

  4. 查看windows系统热键占用情况

    有时候我们经常用一些软件中的快捷键,但是会发现快捷键设置的很正确,但是就是不起作用.这就是因为这些快捷键被系统或者其他软件占用了. 那么这时我们怎么知道是哪个软件占用了呢?这确实是个纠结的问题,还好大 ...

  5. ios 获取n个月前或者n个月后的日期

    NSCalendar *calendar = [NSCalendar currentCalendar]; NSRange range = [calendar rangeOfUnit:NSDayCale ...

  6. ios 设计软件

    briefs V1.0.5 download @ here:http://soft.macx.cn/5442.htm 密码:www.macx.cn

  7. 贴代码—CF230 DIV1 B

    题目在此: http://codeforces.com/contest/392/problem/B 一直理解错了一句话,以为是用最小的move求最小的花费, 读错题目的有木有!!! 不懂汉诺塔的原理有 ...

  8. YARN-RPC

    运行在YARN平台上面的RPC. 当前存在非常多的开源RPC框架,比较著名的有Thrift.Protocol Buffers 和 AVRO.他们均有两部分构成:对象序列化和远程过程调用. 重要类: Y ...

  9. HDOJ 3486 Interviewe

    人生中第一次写RMQ....一看就知道 RMQ+2分但是题目文不对题....不知道到底在问什么东西....各种WA,TLE,,RE...后就过了果然无论错成什么样都可以过的,就是 上层的样例 啊  I ...

  10. 山寨小小军团开发笔记 之 GamePool

    很多时候我们对于物体(比如弓箭)大量的生成与销毁,这个时候可以把弓箭放在内存池中进行管理,加快体验.自己Copy了一个简易版的. 一.代码 GameObjectPoolManager.cs using ...