网乐原科技

直播中

news center新闻中心
首页 > 资讯中心 > 软件技术

HTML 组件(HTML COMPONENTS)三

发布时间:2008-08-10     阅读数: 次       来源:网乐原科技
===编写日历一===
  
  当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);
  }

网乐原科技

客服热线:0771-5761507

QQ:53290011

QQ邮箱:53290011@qq.com

工作时间:周一到周五 9:00-18:00

地址:广西南宁市江南万达写字楼C16栋1309室

物联网开发

关注我们

微信小商店 腾讯QQ客服 微信客服