⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 万年历.htm

📁 万年历javascript 做的,有阳历
💻 HTM
📖 第 1 页 / 共 2 页
字号:
			case 30:
				s = '三十'; break;
				break;
			default :
				s = nStr2[Math.floor(d/10)];
				s += nStr1[d%10];
		}
		return(s);
	}

///////////////////////////////////////////////////////////////////////////////


	var cld;                                  

	function drawCld(SY,SM) {
		var i,sD,s,size;
		cld = new calendar(SY,SM);

		if(SY>1874 && SY<1909) yDisplay = '光緒' + (((SY-1874)==1)?'元':SY-1874)
		if(SY>1908 && SY<1912) yDisplay = '宣統' + (((SY-1908)==1)?'元':SY-1908)
		if(SY>1911) yDisplay = '建国' + (((SY-1949)==1)?'元':SY-1949)

		GZ.innerHTML = yDisplay +'年 农历岁次' + cyclical(SY-1900+36) + '年 &nbsp;&nbsp;【'+Animals[(SY-4)%12]+'】';

		YMBG.innerHTML = "&nbsp;" + SY + "<BR>&nbsp;" + monthName[SM];


		for(i=0;i<42;i++) {

			sObj=eval('SD'+ i);
			lObj=eval('LD'+ i);

			sObj.className = '';

			sD = i - cld.firstWeek;

			if(sD>-1 && sD<cld.length) { //日期內
				sObj.innerHTML = sD+1;

				if(cld[sD].isToday) sObj.className = 'todyaColor'; //今日顏色

				sObj.style.color = cld[sD].color; //國定假日顏色

				if(cld[sD].lDay==1) //顯示農曆月
					lObj.innerHTML = '<b>'+(cld[sD].isLeap?'闰':'') + cld[sD].lMonth + '月' + (monthDays(cld[sD].lYear,cld[sD].lMonth)==29?'小':'大')+'</b>';
				else //顯示農曆日
					lObj.innerHTML = cDay(cld[sD].lDay);

				s=cld[sD].lunarFestival;
				if(s.length>0) { //農曆節日
					if(s.length>6) s = s.substr(0, 4)+'…';
					s = s.fontcolor('red');
				}
				else { //國曆節日
					s=cld[sD].solarFestival;
					if(s.length>0) {
						size = (s.charCodeAt(0)>0 && s.charCodeAt(0)<128)?8:4;
						if(s.length>size+2) s = s.substr(0, size)+'…';
						s = s.fontcolor('blue');
					}
					else { //廿四節氣
						s=cld[sD].solarTerms;
						if(s.length>0) s = s.fontcolor('limegreen');
					}
				}
				if(s.length>0) lObj.innerHTML = s;

			}
			else { //非日期
				sObj.innerHTML = '';
				lObj.innerHTML = '';
			}
		}//end of for(i=0;i<42;i++)
	}


	function changeCld() {
		var y,m;
		y=CLD.SY.selectedIndex+1900;
		m=CLD.SM.selectedIndex;
		drawCld(y,m);
	}

	function pushBtm(K) {
		switch (K){
			case 'YU' :
				if(CLD.SY.selectedIndex>0) CLD.SY.selectedIndex--;
				break;
			case 'YD' :
				if(CLD.SY.selectedIndex<149) CLD.SY.selectedIndex++;
				break;
			case 'MU' :
				if(CLD.SM.selectedIndex>0) {
					CLD.SM.selectedIndex--;
				}
				else {
					CLD.SM.selectedIndex=11;
					if(CLD.SY.selectedIndex>0) CLD.SY.selectedIndex--;
				}
				break;
			case 'MD' :
				if(CLD.SM.selectedIndex<11) {
					CLD.SM.selectedIndex++;
				}
				else {
					CLD.SM.selectedIndex=0;
					if(CLD.SY.selectedIndex<149) CLD.SY.selectedIndex++;
				}
				break;
			default :
				CLD.SY.selectedIndex=tY-1900;
				CLD.SM.selectedIndex=tM;
		}
		changeCld();
	}



var Today = new Date();
var tY = Today.getFullYear();
var tM = Today.getMonth();
var tD = Today.getDate();
//////////////////////////////////////////////////////////////////////////////

var width = "130";
var offsetx = 2;
var offsety = 16;

var x = 0;
var y = 0;
var snow = 0;
var sw = 0;
var cnt = 0;

var dStyle;
document.onmousemove = mEvn;

//顯示詳細日期資料
function mOvr(v) {
   var s,festival;
   var sObj=eval('SD'+ v);
   var d=sObj.innerHTML-1;

      //sYear,sMonth,sDay,week,
      //lYear,lMonth,lDay,isLeap,
      //cYear,cMonth,cDay

   if(sObj.innerHTML!='') {

      sObj.style.cursor = 's-resize';

      if(cld[d].solarTerms == '' && cld[d].solarFestival == '' && cld[d].lunarFestival == '')
         festival = '';
      else
         festival = '<TABLE WIDTH=100% BORDER=0 CELLPADDING=2 CELLSPACING=0 BGCOLOR="#CCFFCC"><TR><TD>'+
         '<FONT COLOR="#000000" STYLE="font-size:9pt;">'+cld[d].solarTerms + ' ' + cld[d].solarFestival + ' ' + cld[d].lunarFestival+'</FONT></TD>'+
         '</TR></TABLE>';

      s= '<TABLE WIDTH="130" BORDER=0 CELLPADDING="2" CELLSPACING=0 BGCOLOR="#000066"><TR><TD>' +
         '<TABLE WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0><TR><TD ALIGN="right"><FONT COLOR="#ffffff" STYLE="font-size:9pt;">'+
         cld[d].sYear+' 年 '+cld[d].sMonth+' 月 '+cld[d].sDay+' 日<br>星期'+cld[d].week+'<br>'+
         '<font color="violet">农历'+(cld[d].isLeap?'闰 ':' ')+cld[d].lMonth+' 月 '+cld[d].lDay+' 日</font><br>'+
         '<font color="yellow">'+cld[d].cYear+'年 '+cld[d].cMonth+'月 '+cld[d].cDay + '日</font>'+
         '</FONT></TD></TR></TABLE>'+ festival +'</TD></TR></TABLE>';


      document.all["detail"].innerHTML = s;

   	if (snow == 0) {
         dStyle.left = x+offsetx-(width/2);
         dStyle.top = y+offsety;
   		dStyle.visibility = "visible";
   		snow = 1;
   	}
	}
}

//清除詳細日期資料
function mOut() {
	if ( cnt >= 1 ) { sw = 0 }
	if ( sw == 0 ) { snow = 0;	dStyle.visibility = "hidden";}
	else cnt++;
}

//取得位置
function mEvn() {
   x=event.x;
   y=event.y;
	if (document.body.scrollLeft)
	   {x=event.x+document.body.scrollLeft; y=event.y+document.body.scrollTop;}
	if (snow){
      dStyle.left = x+offsetx-(width/2)
      dStyle.top = y+offsety
	}
}

///////////////////////////////////////////////////////////////////////////

function changeTZ() {
   CITY.innerHTML = CLD.TZ.value.substr(6)
   setCookie("TZ",CLD.TZ.selectedIndex)
}

function tick() {
   var today
   today = new Date()
   Clock.innerHTML = today.toLocaleString().replace(/(年|月)/g, "/").replace(/日/, "");
   Clock2.innerHTML = TimeAdd(today.toGMTString(), CLD.TZ.value)
   window.setTimeout("tick()", 1000);
}

function setCookie(name, value) {
	var today = new Date()
	var expires = new Date()
	expires.setTime(today.getTime() + 1000*60*60*24*365)
	document.cookie = name + "=" + escape(value)	+ "; expires=" + expires.toGMTString()
}

function getCookie(Name) {
   var search = Name + "="
   if(document.cookie.length > 0) {
      offset = document.cookie.indexOf(search)
      if(offset != -1) {
         offset += search.length
         end = document.cookie.indexOf(";", offset)
         if(end == -1) end = document.cookie.length
         return unescape(document.cookie.substring(offset, end))
      }
      else return ""
   }
}

/////////////////////////////////////////////////////////

function initial() {
   dStyle = detail.style;
   CLD.SY.selectedIndex=tY-1900;
   CLD.SM.selectedIndex=tM;
   drawCld(tY,tM);

   CLD.TZ.selectedIndex=getCookie("TZ");
   changeTZ();
   tick();
}



//-->
</SCRIPT>

<SCRIPT language=VBScript>
<!--
'===== 算世界時間
Function TimeAdd(UTC,T)
   Dim PlusMinus, DST, y
   If Left(T,1)="-" Then PlusMinus = -1 Else PlusMinus = 1
   UTC=Right(UTC,Len(UTC)-5)
   UTC=Left(UTC,Len(UTC)-4)
   y = Year(UTC)
   TimeAdd=DateAdd("n", (Cint(Mid(T,2,2))*60 + Cint(Mid(T,4,2))) * PlusMinus, UTC)
   '美國日光節約期間: 4月第一個星日00:00 至 10月最後一個星期日00:00
   If Mid(T,6,1)="*" And DateSerial(y,4,(9 - Weekday(DateSerial(y,4,1)) mod 7) ) <= TimeAdd And DateSerial(y,10,31 - Weekday(DateSerial(y,10,31))) >= TimeAdd Then
      TimeAdd=CStr(DateAdd("h", 1, TimeAdd))
      tSave.innerHTML = "R"
   Else
      tSave.innerHTML = ""
   End If
   TimeAdd = CStr(TimeAdd)
End Function
'-->
</SCRIPT>

<STYLE>.todyaColor {
	BACKGROUND-COLOR: aqua
}
</STYLE>

<META content="MSHTML 5.00.2920.0" name=GENERATOR></HEAD>
<BODY onload=initial()>
<SCRIPT language=JavaScript><!--
   if(navigator.appName == "Netscape" || parseInt(navigator.appVersion) < 4)
   document.write("<h1>你的瀏覽器無法執行此程式。</h1>此程式需在 IE4 以後的版本才能執行!!")
//--></SCRIPT>

<DIV id=detail style="POSITION: absolute"></DIV>
<CENTER>
<FORM name=CLD>
<TABLE>
  <TBODY>
  <TR>
    <TD align=middle vAlign=top><BR><FONT size=2 
      style="FONT-SIZE: 9pt">北京时间:</FONT><BR><FONT color=#000080 face=Arial 
      id=Clock size=4 align="center"></FONT>
      <P><!--時區 *表示自動調整為日光節約時間--><FONT size=2 style="FONT-SIZE: 9pt"><SELECT 
      name=TZ onchange=changeTZ() style="FONT-SIZE: 9pt"> <OPTION selected 
        value="-1200 安尼威土克、瓜甲蘭">国际换日线<OPTION value="-1100 中途島、薩摩亞群島">萨摩亚<OPTION 
        value="-1000 夏威夷">夏威夷<OPTION value=-0900*阿拉斯加>阿拉斯加<OPTION 
        value=-0800*太平洋時間(美加)、提亞納>太平洋<OPTION value="-0700 亞歷桑那">美国山区<OPTION 
        value=-0700*山區時間(美加)>美加山区<OPTION value=-0600*薩克其萬(加拿大)>加拿大中部<OPTION 
        value=-0600*墨西哥市、塔克西卡帕>墨西哥<OPTION value=-0600*中部時間(美加)>美加中部<OPTION 
        value=-0500*波哥大、里瑪>南美洲太平洋<OPTION value=-0500*東部時間(美加)>美加东部<OPTION 
        value=-0500*印第安納(東部)>美东<OPTION value=-0400*加拉卡斯、拉帕茲>南美洲西部<OPTION 
        value="-0400*大西洋時間 加拿大)">大西洋<OPTION value="-0330 新島(加拿大東岸)">纽芬兰<OPTION 
        value="-0300 波西尼亞">東南美洲<OPTION value="-0300 布魯諾斯愛麗斯、喬治城">南美洲东部<OPTION 
        value=-0200*大西洋中部>大西洋中部<OPTION value=-0100*亞速爾群島、維德角群島>亚速尔<OPTION 
        value="+0000 格林威治時間、都柏林、愛丁堡、倫敦">英国夏令<OPTION 
        value="+0000 莫洛維亞(賴比瑞亞)、卡薩布蘭卡">格林威治标准<OPTION 
        value="+0100 巴黎、馬德里">罗马<OPTION value="+0100 布拉格, 華沙, 布達佩斯">中欧<OPTION 
        value="+0100 柏林、斯德哥爾摩、羅馬、伯恩、布魯賽爾、維也納">西欧<OPTION 
        value="+0200 以色列">以色列<OPTION value=+0200*東歐>東欧<OPTION 
        value=+0200*開羅>埃及<OPTION value=+0200*雅典、赫爾辛基、伊斯坦堡>GFT<OPTION 
        value=+0200*赫拉雷、皮托里>南非<OPTION 
        value=+0300*巴格達、科威特、奈洛比(肯亞)、里雅德(沙烏地)>沙烏地阿拉伯<OPTION 
        value=+0300*莫斯科、聖彼得堡、賀占、窩瓦格瑞德>俄罗斯<OPTION value=+0330*德黑蘭>伊朗<OPTION 
        value=+0400*阿布達比(東阿拉伯)、莫斯凱、塔布理斯(喬治亞共和)>阿拉伯<OPTION 
        value=+0430*喀布爾>阿富汗<OPTION value="+0500 伊斯蘭馬巴德、克洛奇、伊卡特林堡、塔須肯">西亚<OPTION 
        value="+0530 孟買、加爾各答、馬垂斯、新德里、可倫坡">印度<OPTION 
        value="+0600 阿馬提、達卡">中亚<OPTION value="+0700 曼谷、亚加达、胡志明市">曼谷<OPTION 
        value="+0800 北京、重慶、黑龍江">北京<OPTION value="+0800 台灣、香港、新加坡">台北<OPTION 
        value="+0900 东京、大阪、汉城、东西伯利亚">东京<OPTION value="+0930 達爾文">澳洲中部<OPTION 
        value="+1000 布里斯本、墨尔本、席德尼">席德尼<OPTION value="+1000 霍巴特">塔斯梅尼亚<OPTION 
        value="+1000 關島、莫斯比港、海蔘威">西太平洋<OPTION 
        value=+1100*馬哥大、所羅門群島、新卡倫多尼亞>太平洋中部<OPTION 
        value="+1200 威靈頓、奧克蘭">纽西兰<OPTION 
      value="+1200 斐濟、肯加塔、馬歇爾群島">斐济</OPTION></SELECT>时间</FONT> <FONT id=tSave 
      style="COLOR: red; FONT-FAMILY: Wingdings; FONT-SIZE: 18pt"></FONT><BR><FONT 
      color=#000080 face=Arial id=Clock2 size=4 align="center"></FONT><BR><FONT 
      style="COLOR: green; FONT-FAMILY: Webdings; FONT-SIZE: 120pt">&ucirc;</FONT><BR><FONT 
      id=CITY 
      style="COLOR: blue; FONT-FAMILY: '宋体'; FONT-SIZE: 9pt; WIDTH: 150px"></FONT></P></TD>
    <TD align=middle>
      <DIV style="POSITION: absolute; TOP: 30px; Z-INDEX: -1"><FONT id=YMBG 
      style="COLOR: #f0f0f0; FONT-FAMILY: 'Arial Black'; FONT-SIZE: 100pt">&nbsp;0000<BR>&nbsp;JUN</FONT> 
      </DIV>
      <TABLE border=0>
        <TBODY>
        <TR>
          <TD bgColor=#000080 colSpan=7><FONT color=#ffffff size=2 
            style="FONT-SIZE: 9pt">公元<SELECT name=SY onchange=changeCld() 
            style="FONT-SIZE: 9pt"> 
              <SCRIPT language=JavaScript><!--
            for(i=1900;i<2050;i++) document.write('<option>'+i)
            //--></SCRIPT>
            </SELECT>年<SELECT name=SM onchange=changeCld() 
            style="FONT-SIZE: 9pt"> 
              <SCRIPT language=JavaScript><!--
            for(i=1;i<13;i++) document.write('<option>'+i)
            //-->
</SCRIPT>
            </SELECT>月</FONT> <FONT color=#ffffff face=宋体 id=GZ 
            size=4></FONT><BR></TD></TR>
        <TR align=middle bgColor=#e0e0e0>
          <TD width=54>日</TD>
          <TD width=54>一</TD>
          <TD width=54>二</TD>
          <TD width=50>三</TD>
          <TD width=54>四</TD>
          <TD width=54>五</TD>
          <TD width=54>六</TD></TR>
        <SCRIPT language=JavaScript><!--
            var gNum
            for(i=0;i<6;i++) {
               document.write('<tr align=center>')
               for(j=0;j<7;j++) {
                  gNum = i*7+j
                  document.write('<td id="GD' + gNum +'" onMouseOver="mOvr(' + gNum +')" onMouseOut="mOut()"><font id="SD' + gNum +'" size=5 face="Arial Black"')
                  if(j == 0) document.write(' color=red')
                  if(j == 6)
                     if(i%2==1) document.write(' color=red')
                        else document.write(' color=green')
                  document.write(' TITLE=""> </font><br><font id="LD' + gNum + '" size=2 style="font-size:9pt"> </font></td>')
               }
               document.write('</tr>')
            }
            //-->
</SCRIPT>
        </TBODY></TABLE></TD>
    <TD align=middle vAlign=top width=60><BR><BR><BR><BR><BUTTON 
      onclick="pushBtm('YU')" style="FONT-SIZE: 9pt">年▲</BUTTON><BR><BUTTON 
      onclick="pushBtm('YD')" style="FONT-SIZE: 9pt">年▼</BUTTON> 
      <P><BUTTON onclick="pushBtm('MU')" 
      style="FONT-SIZE: 9pt">月▲</BUTTON><BR><BUTTON onclick="pushBtm('MD')" 
      style="FONT-SIZE: 9pt">月▼</BUTTON> 
      <P><BUTTON onclick="pushBtm('')" style="FONT-SIZE: 9pt">当月</BUTTON> 
      <P></P></TD></TR></TBODY></TABLE></FORM></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -