欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

HTML组件(HTML COMPONENTS)之四

程序员文章站 2022-03-31 16:53:23
...
===编写日历一===

  当calendar.html调用 MYCAL:CALENDAR,当月的日历将会显示在页面中,函数setCal()是主要程序段,它初始化一些变量并调用drawCal()函数。我们也使用了三个别的函数:getMonthName()、 getDays() 和 leapYear()。让我们从最后一个函数开始:

  getDays()函数接收哪月值和哪年值,并且建立一个有12个元素的数组,用来存放每月的天数,哪一年用来决定是不是闰年,在闰年中二月是29天,而不是闰年是28天。该函数返回指定月份的天数。

以下是getDays():

function getDays(month, year) { 
// create array to hold number of days in 
each month 
var ar = new Array(12); 
ar[0] = 31; // January 
ar[1] = 
(leapYear(year)) ? 29 : 28; // February 
ar[2] = 31; // March 
ar[3] = 30; 
// APRil 
ar[4] = 31; // May 
ar[5] = 
30; // June 
ar[6] = 31; // July 
ar[7] = 31; // August 
ar[8] = 30; // 
September 
ar[9] = 31; // October 
ar[10] = 30; // November 
ar[11] = 
31; // December 

// return number of days in the specified month 
(parameter) 
return ar[month]; 
} 
如果指定的年数可以被4整除,那么leapYear()函数将返回“true”,否则返回”false“: 
function leapYear(year) { 
if (year % 4 == 
0) // basic rule 
return true; // is leap year 
/* else */ // else not 
needed when statement is "return" 
return false; // is not leap year 
} 
getMonthName()函数返回指定月份的名字: 
function getMonthName(month) { 
// create 
array to hold name of each month 
var ar = new Array(12); 
ar[0] = 
"January"; 
ar[1] = "February"; 
ar[2] = "March"; 
ar[3] = "April"; 
ar[4] = "May"; 
ar[5] = "June"; 
ar[6] = "July"; 
ar[7] = "August"; 
ar[8] = "September"; 
ar[9] = "October"; 
ar[10] = "November"; 
ar[11] = "December"; 

// return name of specified month (parameter) 
return ar[month]; 
} 
setCal()函数是主模块,我们在脚本的第一行调用它。该函数为当天(now)、和每月的第一天(firstDayInstance)建立一个Date对象。用这些对象,setCal()函数解析出关于一个月的第一天、当日,和最后一天的所有信息。 
function setCal() { 
// standard time 
attributes 
var now = new Date(); 
var year = now.getFullYear(); 
var 
month = now.getMonth(); 
var monthName = getMonthName(month); 
var date = 
now.getDate(); 
now = null; 

// create instance of first day of month, 
and extract the day on which it occurs 
var firstDayInstance = new Date(year, 
month, 1); 
var firstDay = firstDayInstance.getDay(); 
firstDayInstance = 
null; 

// number of days in current month 
var days = getDays(month, 
year); 

// call function to draw calendar 
drawCal(firstDay + 1, days, 
date, monthName, year); 
}

以上就是HTML组件(HTML COMPONENTS)之四的内容,更多相关文章请关注PHP中文网(www.php.cn)!