Home  >  Article  >  Web Front-end  >  HTML COMPONENTS No. 6

HTML COMPONENTS No. 6

黄舟
黄舟Original
2016-12-17 13:54:211565browse

====Calendar main page===

head> 
<title>Calendar Example</title> 
<?IMPORT NAMESPACE="MYCAL" IMPLEMENTATION="calendar.htc"/> 
</HEAD> 

<BODY> 
<P>Click a day in the calendar to add or modify your schedule.</P> 

<MYCAL:CALENDAR></MYCAL:CALENDAR> 

</BODY> 
</HTML>

===CALENDAR HTC===

 
<HEAD> 
<?IMPORT NAMESPACE="ANYDAY" IMPLEMENTATION="day.htc"/> 
<?IMPORT NAMESPACE="TODAY" IMPLEMENTATION="today.htc"/> 

<PUBLIC:COMPONENT tagName="CALENDAR"> 
<ATTACH EVENT="oncontentready" ONEVENT="fnInit()"/> 
</PUBLIC:COMPONENT> 

<SCR<a href="http://ip.knowsky.com/">ip</a>T LANGUAGE="<a href="http://www.knowsky.com/article.asp?typeid=160">java</a>Script"> 
<!-- 
function fnInit() { 
defaults.viewLink = document; 
} 
// --> 
</SCRIPT> 

<STYLE> 
TD { 
background-color:tan; 
width:50; 
height:50; 
} 
</STYLE> 
</HEAD> 

<BODY> 
<SCRIPT LANGUAGE="<a href="http://www.knowsky.com/article.asp?typeid=36">Javascript</a>"> 
<!-- 

// Copyright 1997 -- Tomer Shiran 

setCal(); 

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 
} 

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; // A<a href="http://pr.knowsky.com/">PR</a>il 
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]; 
} 

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]; 
} 

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); 
} 

function drawCal(firstDay, lastDate, date, monthName, year) { 
// constant table settings 
//var headerHeight = 50 // height of the table&#39;s header cell 
var border = 2; // 3D height of table&#39;s border 
var cellspacing = 4; // width of table&#39;s border 
var headerColor = "midnightblue"; // color of table&#39;s header 
var headerSize = "+3"; // size of tables header font 
var colWidth = 60; // width of columns in table 
var dayCellHeight = 25; // height of cells containing days of the week 
var dayColor = "darkblue"; // color of font representing week days 
var cellHeight = 40; // height of cells representing dates in the calendar 
var todayColor = "red"; // color specifying today&#39;s date in the calendar 
var timeColor = "purple"; // color of font representing current time 

// create basic table structure 
var text = ""; // initialize accumulative variable to empty string 
text += &#39;<TABLE BORDER=&#39; + border + &#39; CELLSPACING=&#39; + cellspacing + &#39;>&#39;; // table settings 
text += &#39;<TH COLSPAN=7 HEIGHT=&#39; + 10 + &#39;>&#39;; // create table header cell 
text += &#39;<FONT COLOR="&#39; + headerColor + &#39;" SIZE=&#39; + headerSize + &#39;>&#39;; // set font for table header 
text += monthName + &#39; &#39; + year; 
text += &#39;</FONT>&#39;; // close table header&#39;s font settings 
text += &#39;</TH>&#39;; // close header cell 

// variables to hold constant settings 
var openCol = &#39;<TD WIDTH=&#39; + colWidth + &#39; HEIGHT=&#39; + dayCellHeight + &#39;>&#39;; 
openCol += &#39;<FONT COLOR="&#39; + dayColor + &#39;">&#39;; 
var closeCol = &#39;</FONT></TD>&#39;; 

// create array of abbreviated day names 
var weekDay = new Array(7); 
weekDay[0] = "Sun"; 
weekDay[1] = "Mon"; 
weekDay[2] = "Tues"; 
weekDay[3] = "Wed"; 
weekDay[4] = "Thu"; 
weekDay[5] = "Fri"; 
weekDay[6] = "Sat"; 

// create first row of table to set column width and specify week day 
text += &#39;<TR ALIGN="center" VALIGN="center">&#39;; 
for (var dayNum = 0; dayNum < 7; ++dayNum) { 
text += openCol + weekDay[dayNum] + closeCol; 
} 
text += &#39;</TR>&#39;; 

// declaration and initialization of two variables to help with tables 
var dayOfMonth = 1; 
var curCell = 1; 

for (var row = 1; row <= Math.ceil((lastDate + firstDay - 1) / 7); ++row) { 
text += &#39;<TR ALIGN="right" VALIGN="top">&#39;; 
for (var col = 1; col <= 7; ++col) { 
if ((curCell < firstDay) || (dayOfMonth > lastDate)) { 
text += &#39;<TD></TD>&#39;; 
curCell++ 
} else { 
if (dayOfMonth == date) { // current cell represents today&#39;s date 
text += &#39;<TD><TODAY:DAY value=&#39; + dayOfMonth + &#39;></TODAY:DAY></TD>&#39;; 
} else { 
text += &#39;<TD><ANYDAY:DAY value=&#39; + dayOfMonth + &#39;></ANYDAY:DAY></TD>&#39;; 
} 
dayOfMonth++; 
} 
} 
text += &#39;</TR>&#39;; 
} 

// close all basic table tags 
text += &#39;</TABLE>&#39;; 
text += &#39;</CENTER>&#39;; 

// print accumulative HTML string 
document.write(text); 
} 

// --> 
</SCRIPT> 
</BODY> 
</HTML>

The above is the content of HTML COMPONENTS (HTML COMPONENTS) 6. For more related articles, please pay attention to the PHP Chinese website (www. php.cn)!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:HTML COMPONENTS Part 3Next article:HTML COMPONENTS Part 3