Меню сайта

Календарь ( Java-скрипт )

Календарь на текущий месяц с указанием текущего дня. Если его дополнить ссылками, то можно использовать в новостном разделе.

&lt-html&gt-
&lt-head&gt-
&lt-/head&gt-
&lt-body&gt-
&lt-script language=»JavaScript»&gt-
&lt-!—
// Copyright (c) 1996-1997 Tomer Shiran. All rights reserved.
// Permission given to use the script provided that this notice remains as is.
// Additional scripts can be found at http://www.geocities.com/~yehuda/
setCal()
function getTime() {
— — — — // initialize time-related variables with current time settings
— — — — var now = new Date()
— — — — var hour = now.getHours()
— — — — var minute = now.getMinutes()
— — — — now = null
— — — — var ampm = «» —
— — — — // validate hour values and set value of ampm
— — — — if (hour &gt-= 12) {
— — — — — — — — hour -= 12
— — — — — — — — ampm = «PM»
— — — — } else
— — — — — — — — ampm = «AM»
— — — — hour = (hour == 0) ? 12 : hour
— — — — // add zero digit to a one digit minute
— — — — if (minute &lt- 10)
— — — — — — — — minute = «0» + minute // do not parse this number!
— — — — // return time string
— — — — return hour + «:» + minute + » » + ampm
}
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 // 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]
}
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.getYear()
— — — — 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, 1900 + year)
}
function drawCal(firstDay, lastDate, date, monthName, year) {
— — — — // constant table settings
— — — — var headerHeight = 15 // height of the table’s header cell
— — — — var border = 1 // 3D height of table’s border
— — — — var cellspacing = 1 // width of table’s border
— — — — var headerColor = «midnightblue» // color of table’s header
— — — — var headerSize = «1» // size of tables header font
— — — — var colWidth = 30 // width of columns in table
— — — — var dayCellHeight = 10 // height of cells containing days of the week
— — — — var dayColor = «darkblue» // color of font representing week days
— — — — var cellHeight = 20 // height of cells representing dates in the calendar
— — — — var todayColor = «darkred» // color specifying today’s date in the calendar
— — — — var timeColor = «blue» // color of font representing current time
— — — — // create basic table structure
— — — — var text = «» // initialize accumulative variable to empty string
— — — — text += ‘&lt-TABLE BORDER=’ + border + ‘ CELLSPACING=’ + cellspacing + ‘&gt-‘ // table settings
— — — — text += — — — — ‘&lt-TH COLSPAN=7 HEIGHT=’ + headerHeight + ‘&gt-‘ // create table header cell
— — — — text += — — — — — — — — ‘&lt-FONT COLOR=»‘ + headerColor + ‘» SIZE=’ + headerSize + ‘&gt-‘ // set font for table header
— — — — text += — — — — — — — — — — — — monthName + ‘ ‘ + year —
— — — — text += — — — — — — — — ‘&lt-/FONT&gt-‘ // close table header’s font settings
— — — — text += — — — — ‘&lt-/TH&gt-‘ // close header cell
— — — — // variables to hold constant settings
— — — — var openCol = ‘&lt-TD WIDTH=’ + colWidth + ‘ HEIGHT=’ + dayCellHeight + ‘&gt-‘
&nb
sp- — — — openCol += ‘&lt-FONT COLOR=»‘ + dayColor + ‘»&gt-‘
— — — — var closeCol = ‘&lt-/FONT&gt-&lt-/TD&gt-‘
— — — — // 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 += ‘&lt-TR ALIGN=»center» VALIGN=»center»&gt-‘
— — — — for (var dayNum = 0- dayNum &lt- 7- ++dayNum) {
— — — — — — — — text += openCol + weekDay[dayNum] + closeCol —
— — — — }
— — — — text += ‘&lt-/TR&gt-‘
— — — — —
— — — — // declaration and initialization of two variables to help with tables
— — — — var digit = 1
— — — — var curCell = 1
— — — — —
— — — — for (var row = 1- row &lt-= Math.ceil((lastDate + firstDay — 1) / 7)- ++row) {
— — — — — — — — text += ‘&lt-TR ALIGN=»right» VALIGN=»top»&gt-‘
— — — — — — — — for (var col = 1- col &lt-= 7- ++col) {
— — — — — — — — — — — — if (digit &gt- lastDate)
— — — — — — — — — — — — — — — — break
— — — — — — — — — — — — if (curCell &lt- firstDay) {
— — — — — — — — — — — — — — — — text += ‘&lt-TD&gt-&lt-/TD&gt-‘
— — — — — — — — — — — — — — — — curCell++
— — — — — — — — — — — — } else {
— — — — — — — — — — — — — — — — if (digit == date) { // current cell represent today’s date
— — — — — — — — — — — — — — — — — — — — text += ‘&lt-TD HEIGHT=’ + cellHeight + ‘&gt-‘
— — — — — — — — — — — — — — — — — — — — text += ‘&lt-FONT COLOR=»‘ + todayColor + ‘» SIZE=»-1″&gt-‘
— — — — — — — — — — — — — — — — — — — — text += digit
— — — — — — — — — — — — — — — — — — — — text += ‘&lt-/FONT&gt-‘
// You can uncomment these lines if you want current time in today’s box
// — — — — — — — — — — — — — — — — — — -text += ‘&lt-BR&gt-‘
// — — — — — — — — — — — — — — — — — — -text += ‘&lt-FONT COLOR=»‘ + timeColor + ‘» SIZE=»-1″&gt-‘
// — — — — — — — — — — — — — — — — — — -text += ‘&lt-CENTER&gt-‘ + getTime() + ‘&lt-/CENTER&gt-‘
// — — — — — — — — — — — — — — — — — — -text += ‘&lt-/FONT&gt-‘
— — — — — — — — — — — — — — — — — — — — text += ‘&lt-/TD&gt-‘
— — — — — — — — — — — — — — — — } else
— — — — — — — — — — — — — — — — — — — — text += ‘&lt-TD HEIGHT=’ + cellHeight + ‘&gt-&lt-font size=»-1″&gt-‘ + digit + ‘&lt-/font&gt-&lt-/TD&gt-‘
— — — — — — — — — — — — — — — — digit++
— — — — — — — — — — — — }
— — — — — — — — }
— — — — — — — — text += ‘&lt-/TR&gt-‘
— — — — }
— — — — —
— — — — // close all basic table tags
— — — — text += ‘&lt-/TABLE&gt-‘
— — — — // print accumulative HTML string
— — — — document.write(text) —
}
// —&gt-
&lt-/script&gt-
&lt-/body&gt-
&lt-/html&gt-
Категория: Самые популярные Java-скрипты | Дата: 25.05.13

Меню раздела
Блок