一個非常漂亮的腳本日曆

來源:互聯網
上載者:User
關鍵字 網頁製作 Ajax JavaScript

<Script LANGUAGE="JavaScript">
var months = new Array("一", "二", "三","四", "五", "六", "七", "八", "九","十", "十一", "十二");
var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31,30, 31, 30, 31);
var days = new Array("日","一", "二", "三","四", "五", "六");
var classTemp;
var today=new getToday();
var year=today.year;
var month=today.month;
var newCal;

function getDays(month, year) {
if (1 == month) return ((0 == year % 4) && (0 != (year % 100))) || (0 == year % 400) ? 29 : 28;
else return daysInMonth[month];
}

function getToday() {
this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}

 function Calendar() {
  newCal = new Date(year,month,1);
  today = new getToday();  
  var day = -1;
  var startDay = newCal.getDay();
  var endDay=getDays(newCal.getMonth(), newCal.getFullYear());
  var daily = 0;
  if ((today.year == newCal.getFullYear()) &&(today.month == newCal.getMonth()))
  {
  ;  day = today.day;
  }
  var caltable = document.all.caltable.tBodies.calendar;
  var intDaysInMonth =getDays(newCal.getMonth(), newCal.getFullYear());

  for (var intWeek = 0; intWeek < caltable.rows.length;intWeek++)
   for (var intDay = 0;intDay & lt; caltable.rows[intWeek].cells.length;intDay++)
   {
    var cell = caltable.rows[ intWeek].cells[intDay];
    var montemp=(newCal.getMonth()+1)<10? ("0"+(newCal.getMonth()+1)):(newCal.getMonth()+1);        
     if ((intDay == startDay) && (0 == daily)){ daily = 1;}
    var daytemp=daily<10? ("0"+daily):(daily);
    var d="<"+newCal.getFullYear()+"-"+montemp+"-"+daytemp+">";
    if(day==daily) cell.className="DayNow";
    else if(intDay==6) cell.className = "DaySat";
    else if (intDay==0) cell.className ="DaySun";
    else cell.className="Day";
    if ((daily > 0) && (daily <= intDaysInMonth))
    {
     cell.innerText = daily;
     daily++;
    } else
    {
     cell.className="CalendarTD";
     cell.innerText = "";
    }
  }
  document.all.year.value=year;
  document.all.month.value=month+1;
 }

function subMonth()
{
if ((month-1)<0)
{
month=11;
year=year-1;
} else
{
month=month-1;
}
Calendar();
}

function addMonth()
{
if((month+1)>11)
{
month=0;
year=year+1;
} else
{
month=month+1;
}
Calendar();
}

function setDate()
{
if (document.all.month.value<1|| document.all.month.value>12)
{
alert("月的有效範圍在1-12之間!");
return;
}
year=Math.ceil(document.all.year.value);
month=Math.ceil(document.all.month.value-1);
Calendar();
}
</Script>

<Script>
function buttonOver()
{
var obj = window.event.srcElement;
obj.runtimeStyle.cssText = "background-color:#FFFFFF";
obj.className="Hover";
}

function buttonOut()
{
var obj = window.event.srcElement;
window.setTimeout(function(){obj.runtimeStyle.cssText = "";},300);
}
</Script>

<Style>
Input {font-family: verdana;font-size: 9pt;text-decoration: none;background-color: #FFFFFF;height: 20px;border: 1px solid #666666;color:#000000;}

. Calendar {font-family: verdana;text-decoration: none;width: 170;background-color: #C0D0E8;font-size: 9pt;border:0px dotted #1C6FA5;}
. CalendarTD {font-family: verdana;font-size: 7pt;color: #000000;background-color:#f6f6f6;height: 20px;width:11%; text-align: center;}

. Title {font-family: verdana;font-size: 11pt;font-weight: normal;height: 24px;text-align: center;color: #333333; text-decoration: none;background-color: #A4B9D7;border-top-width: 1px;border-right-width: 1px;border-bottom-width: 1px;border-left-width: 1px;border-bottom-style:1px;border-top-color: #999999;border-right-color: #999999; border-bottom-color: #999999;border-left-color: #999999;}

. Day {font-family: verdana;font-size: 7pt;color:#243F65;background-color: #E5E9F2;height: 20px;width:11%;text-align: center;}
. DaySat {font-family: verdana;font-size: 7pt;color:#FF0000;text-decoration: none;background-color:#E5E9F2; text-align: center;height: 18px;width: 12%;}
. DaySun {font-family: verdana;font-size: 7pt;color: #FF0000;text-decoration: none;background-color:#E5E9F2; text-align: center;height: 18px;width: 12%;}
. DayNow {font-family: verdana;font-size: 7pt;font-weight: bold;color: #000000;background-color: #FFFFFF;height: 20px; text-align: center;}

. DayTitle {font-family: verdana;font-size: 9pt;color: #000000;background-color: #C0D0E8;height: 20px;width:11%; text-align: center;}
. DaySatTitle {font-family: verdana;font-size: 9pt;color:#FF0000;text-decoration: none;background-color:#C0D0E8; text-align: center;height: 20px;width: 12%;}
. DaySunTitle {font-family: verdana;font-size: 9pt;color: #FF0000;text-decoration: none;background-color: #C0D0E8; text-align: center;height: 20px;width: 12%;}

. DayButton {font-family: Webdings;font-size: 9pt;font-weight: bold;color: #243F65;cursor:hand;text-decoration: none;}

</Style>




&lt;table border="0" cellpadding="0" cellspacing="1" class="Calendar" id="caltable"&gt;


&lt;thead&gt;


     &lt;tr align="center" valign="middle"&gt;


  &lt;td colspan="7" class="Title"&gt;


&lt;a href="javaScript:subMonth();" title="上一月" Class="DayButton"&gt;3&lt;/a&gt; &lt;input name="year" type="text" size="4" maxlength="4" onkeydown="if (event.keyCode==13){setDate()}" onkeyup="this.value=this.value.replace(/[^0-9 ]/g,'')"  onpaste="this.value=this.value.replace(/[^0-9]/g,'')"&gt; 年 &lt;input name="month" type="text" size="1" maxlength="2" onkeydown="if (event.keyCode==13){setDate()}" onkeyup="this.value=this.value.replace(/[^0-9]/g,'')"  onpaste="this.value=this.value.replace(/[^0-9]/g,'')"&gt; 月 &lt;a href="JavaScript:addMonth();" title="下一月" Class=" DayButton"&gt;4&lt;/a&gt;


  &lt;/td&gt;


 &lt;/tr&gt;


 &lt;tr align="center" valign="middle"&gt;


  &lt;Script LANGUAGE="JavaScript"&gt; 


   document.write("&lt;TD class=DaySunTitle id=diary &gt;" + days[0] + "&lt;/TD&gt;");


for (var intLoop = 1; intLoop &lt; days.length-1;intLoop++)


    document.write("&lt;TD class=DayTitle id=diary&gt;" + days[intLoop] + "&lt;/TD&gt;");


    document.write("&lt;TD class=DaySatTitle id=diary&gt;" + days[intLoop] + "&lt;/TD&gt;");


  &lt;/Script&gt;


 &lt;/TR&gt;


&lt;/thead&gt;


&lt;TBODY border=1 cellspacing="0" cellpadding="0" ID="calendar" ALIGN=CENTER ONCLICK="getDiary()"&gt;


 &lt;Script LANGUAGE="JavaScript"&gt;


  for (var intWeeks = 0; intWeeks &lt; 6; intWeeks++)


  {


   document.write("&lt;TR style='cursor:hand'&gt;");


   for (var intDays = 0; intDays &lt; days.length;intDays++) document.write("&lt;TD class=CalendarTD onMouseover='bu ttonOver();' onMouseOut='buttonOut();' &gt;&lt;/TD&gt;");


document.write("&lt;/TR&gt;");


  }


 &lt;/Script&gt;


&lt;/TBODY&gt;


&lt;/TABLE&gt;


&lt;Script  LANGUAGE="JavaScript"&gt;


 Calendar();


&lt;/Script&gt;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.