求 HTML 万年历代码

html-css09

求 HTML 万年历代码,第1张

<html>

<head>

   <link rel="stylesheet" type="text/css" href="Skin.css">

   <style>

    <!--

    table{ text-align: center }

    -->

   </style>

</head>

<body>

   <div align="center">

    <script language="javascript">

    

     var my = new Date()

    

     //***************************************************函数开始,这是用来显示日历的***********************

     function showc() {

      var k=1

      var j=1

      var today

      var tomonth

      var theday=1//日期

      var max

      var temp

      var tempday//这个月第一天的星期

      document.write ("<b>" + my.getFullYear() + "-" + (my.getMonth()+1) + "</b>")

      document.write ("<table border='1' width='273' height='158'>")

      document.write ("<tr>")

      document.write ("<td height='23' width='39'><font color='red'>Sun</font></td>")

      document.write ("<td height='23' width='39'>Mon</td>")

      document.write ("<td height='23' width='39'>Tue</td>")

      document.write ("<td height='23' width='39'>Wed</td>")

      document.write ("<td height='23' width='39'>Thu</td>")

      document.write ("<td height='23' width='39'>Fri</td>")

      document.write ("<td height='23' width='39'>Sat</td>")

      document.write ("</tr>")

      temp=my.getDate()

      my.setDate(1)

      //document.write (my.getDate())

      tempday=my.getDay()//返回第一天是星期几

      my.setDate(temp)

      today=my.getDay()//返回现在星期几

     

      switch ((my.getMonth()+1)) {

       case 1:

       case 3:

       case 5:

       case 7:

       case 8:

       case 10:

       case 12:

        max=31

        break

       case 4:

       case 6:

       case 9:

       case 11:

        max=30

        break

       default:

        max=29//这里没有考虑闰月!!

       //document.write (max)

      }

      for(k=0k<6k++) {

       document.write ("<tr>")

       for(j=0j<=6j++) {

        document.write ("<td height='23' width='39'>")

        if(j>=(tempday)) {

         tempday=0//设置为最小,相当于取消判断条件

         if(theday<=max) {

          document.write ("<a title=" + my.getFullYear() + "-" + (my.getMonth()+1) + "-" +theday + " target='_blank' href=detail.asp?date=" + theday + ">")

          if(theday==my.getDate()) 

           document.write ("<font color='green'>[" + theday + "]</font></a>")

           else if(j==0)

           document.write ("<font color='red'>" + theday + "</font></a>")

          else

           document.write (theday + "</a>")

          theday++

         }

        }

        document.write ("</td>")

       }

       document.write ("</tr>")

      }

      document.write ("</table>")

     }

    

     //************************************************函数结束

     showc()

    </script>

   </div>

<body>

</html>

这个是万年历的代码

望采纳!

参考资料http://zhidao.baidu.com/question/347251775.html

下面代码可以实现你要的功能,如下。至于你看不到它的真实的源代码,它可能通过程序动态加载,或者是js调用。你看到的,仅仅是静态的html代码而已!

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">

<title>单行带农历的日期时间代码</title>

</head>

<body>

<SCRIPT language=JavaScript>

<!--

function CalConv()

{

FIRSTYEAR = 1998

LASTYEAR = 2031

today = new Date()

SolarYear = today.getFullYear()

SolarMonth = today.getMonth() + 1

SolarDate = today.getDate()

Weekday = today.getDay()

LunarCal = [

new tagLunarCal( 27, 5, 3, 43, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1 ),

new tagLunarCal( 46, 0, 4, 48, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1 ),

new tagLunarCal( 35, 0, 5, 53, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1 ),

new tagLunarCal( 23, 4, 0, 59, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 ),

new tagLunarCal( 42, 0, 1, 4, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 ),

new tagLunarCal( 31, 0, 2, 9, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0 ),

new tagLunarCal( 21, 2, 3, 14, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1 ),

new tagLunarCal( 39, 0, 5, 20, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1 ),

new tagLunarCal( 28, 7, 6, 25, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1 ),

new tagLunarCal( 48, 0, 0, 30, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1 ),

new tagLunarCal( 37, 0, 1, 35, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1 ),

new tagLunarCal( 25, 5, 3, 41, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 ),

new tagLunarCal( 44, 0, 4, 46, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 ),

new tagLunarCal( 33, 0, 5, 51, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 ),

new tagLunarCal( 22, 4, 6, 56, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 ),

new tagLunarCal( 40, 0, 1, 2, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 ),

new tagLunarCal( 30, 9, 2, 7, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1 ),

new tagLunarCal( 49, 0, 3, 12, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1 ),

new tagLunarCal( 38, 0, 4, 17, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0 ),

new tagLunarCal( 27, 6, 6, 23, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1 ),

new tagLunarCal( 46, 0, 0, 28, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0 ),

new tagLunarCal( 35, 0, 1, 33, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0 ),

new tagLunarCal( 24, 4, 2, 38, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 ),

new tagLunarCal( 42, 0, 4, 44, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1 ),

new tagLunarCal( 31, 0, 5, 49, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0 ),

new tagLunarCal( 21, 2, 6, 54, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1 ),

new tagLunarCal( 40, 0, 0, 59, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1 ),

new tagLunarCal( 28, 6, 2, 5, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0 ),

new tagLunarCal( 47, 0, 3, 10, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1 ),

new tagLunarCal( 36, 0, 4, 15, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1 ),

new tagLunarCal( 25, 5, 5, 20, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0 ),

new tagLunarCal( 43, 0, 0, 26, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1 ),

new tagLunarCal( 32, 0, 1, 31, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0 ),

new tagLunarCal( 22, 3, 2, 36, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0 ) ]

SolarCal = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ]

SolarDays = [ 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365, 396, 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366, 397 ]

if ( SolarYear <= FIRSTYEAR || SolarYear >LASTYEAR ) return 1

sm = SolarMonth - 1

if ( sm <0 || sm >11 ) return 2

leap = GetLeap( SolarYear )

if ( sm == 1 )

d = leap + 28

else

d = SolarCal[sm]

if ( SolarDate <1 || SolarDate >d ) return 3

y = SolarYear - FIRSTYEAR

acc = SolarDays[ leap*14 + sm ] + SolarDate

kc = acc + LunarCal[y].BaseKanChih

Kan = kc % 10

Chih = kc % 12

Age = kc % 60

if ( Age <22 )

Age = 22 - Age

else

Age = 82 - Age

if ( acc <= LunarCal[y].BaseDays ) {

y--

LunarYear = SolarYear - 1

leap = GetLeap( LunarYear )

sm += 12

acc = SolarDays[leap*14 + sm] + SolarDate

}

else

LunarYear = SolarYear

l1 = LunarCal[y].BaseDays

for ( i=0i<13i++ ) {

l2 = l1 + LunarCal[y].MonthDays[i] + 29

if ( acc <= l2 ) break

l1 = l2

}

LunarMonth = i + 1

LunarDate = acc - l1

im = LunarCal[y].Intercalation

if ( im != 0 &&LunarMonth >im ) {

LunarMonth--

if ( LunarMonth == im ) LunarMonth = -im

}

if ( LunarMonth >12 ) LunarMonth -= 12

today=new Date()

function initArray(){

this.length=initArray.arguments.length

for(var i=0i<this.lengthi++)

this[i+1]=initArray.arguments[i] }

var d=new initArray("星期日","星期一","星期二","星期三","星期四","星期五","星期六")

document.write("", today.getYear(),"年",today.getMonth()+1,"月",today.getDate(),"日 ",d[today.getDay()+1],"")

months = ["一","二","三","四","五","六","七","八","九","十","十一","十二"]

days = ["初一","初二","初三","初四","初五","初六","初七","初八","初九","初十","十一","十二","十三","十四","十五","十六","十七","十八","十九","二十","廿一","廿二","廿三","廿四","廿五","廿六","廿七","廿八","廿九","三十"]

document.write( " 农历"+months[LunarMonth-1]+"月" + days[LunarDate-1] + "")

return 0

}

function GetLeap( year )

{

if ( year % 400 == 0 )

return 1

else if ( year % 100 == 0 )

return 0

else if ( year % 4 == 0 )

return 1

else

return 0

}

function tagLunarCal( d, i, w, k, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13) {

this.BaseDays = d

this.Intercalation = i

this.BaseWeekday = w

this.BaseKanChih = k

this.MonthDays = [ m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13 ]

}

//-->

</SCRIPT>

<a target=_blank href=http://www.qpsh.com><FONT color=#2b68a7><SCRIPT>CalConv()</SCRIPT></FONT></a>

</body>

</html>

<html>

<head>

<base fptype="TRUE">

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">

<title>本地时间</title>

<script>setInterval("jnkc.innerHTML=new Date().toLocaleString()+' 星期'+'日一二三四五六'.charAt(new Date().getDay())",1000)</script>

<marquee scrollamount=8><div id='jnkc'></div>

</marquee>

</head>

<body>

<script language=javascript>

function settab()

{

var tab=document.getElementById('tab1')

//alert(se1.options[se1.selectedIndex].text)

var se11=se1.options[se1.selectedIndex].text

var se21=se2.options[se2.selectedIndex].text//下拉列表中的日期

//alert(se11+","+se21)

var lastday=new Date(se11,se21,0).getDate()//所选择月的天数

var firstday=new Date(se11,se21-1,1).getDay()//选择月的第一天是星期几

//alert(lastday+","+firstday)

var weekend//每周的最后一天的日期

var lines//第几行,相对于表格,星期为第零行

//第一行日期

for(var lin1=0lin1<7lin1++)

{

if(lin1<firstday)

tab.rows[1].cells[lin1].innerHTML=" "

else

if(lin1==0||lin1==6)

tab.rows[1].cells[lin1].innerHTML="<font color=red>"+(lin1-firstday+1)+"</font>"

else

tab.rows[1].cells[lin1].innerHTML=lin1-firstday+1

//alert(lin1+","+firstday)

weekend=lin1-firstday+1

lines=1//第一行

}

//将最后2行值空之后再添加数据,以免遗留上一个月的数据,二行相对于非闰年的二月份

for(var i=0i<7i++)

{

tab.rows[5].cells[i].innerHTML=" "

tab.rows[6].cells[i].innerHTML=" "

}

while(weekend<lastday)//循环到月末

{

for(var lin2=0lin2<7lin2++)

{

if(weekend+lin2<lastday)//数字小于等于当前月的最后一天

{

if(lin2==0||lin2==6)

tab.rows[lines+1].cells[lin2].innerHTML="<font color=red>"+(weekend+1+lin2)+"</font>"

else

tab.rows[lines+1].cells[lin2].innerHTML=weekend+1+lin2

}