Вечный календарь
<HTML> <HEAD> <title>Вечный календарь (коллекция скриптов)</title> <META http-equiv=Content-Type content="text/html; charset=windows-1251"> <!-- Вставьте эту часть кода в тег <HEAD> --> <SCRIPT LANGUAGE="JavaScript"> <!-- Оригинал: Rob Patrick (rpatrick@mit.edu) --> <!-- Все скрипты | http://www.cgi.ru --> <!-- Лучшие скрипты только у нас --> <!-- Begin function setToday() { var now = new Date(); var day = now.getDate(); var month = now.getMonth(); var year = now.getYear(); if (year < 2000) // Y2K Fix, Isaac Powell year = year + 1900; // http://onyx.idbsu.edu/~ipowell this.focusDay = day; document.calControl.month.selectedIndex = month; document.calControl.year.value = year; displayCalendar(month, year); } function isFourDigitYear(year) { if (year.length != 4) { alert ("Sorry, the year must be four-digits in length."); document.calControl.year.select(); document.calControl.year.focus(); } else { return true; } } function selectDate() { var year = document.calControl.year.value; if (isFourDigitYear(year)) { var day = 0; var month = document.calControl.month.selectedIndex; displayCalendar(month, year); } } function setPreviousYear() { var year = document.calControl.year.value; if (isFourDigitYear(year)) { var day = 0; var month = document.calControl.month.selectedIndex; year--; document.calControl.year.value = year; displayCalendar(month, year); } } function setPreviousMonth() { var year = document.calControl.year.value; if (isFourDigitYear(year)) { var day = 0; var month = document.calControl.month.selectedIndex; if (month == 0) { month = 11; if (year > 1000) { year--; document.calControl.year.value = year; } } else { month--; } document.calControl.month.selectedIndex = month; displayCalendar(month, year); } } function setNextMonth() { var year = document.calControl.year.value; if (isFourDigitYear(year)) { var day = 0; var month = document.calControl.month.selectedIndex; if (month == 11) { month = 0; year++; document.calControl.year.value = year; } else { month++; } document.calControl.month.selectedIndex = month; displayCalendar(month, year); } } function setNextYear() { var year = document.calControl.year.value; if (isFourDigitYear(year)) { var day = 0; var month = document.calControl.month.selectedIndex; year++; document.calControl.year.value = year; displayCalendar(month, year); } } function displayCalendar(month, year) { month = parseInt(month); year = parseInt(year); var i = 0; var days = getDaysInMonth(month+1,year); var firstOfMonth = new Date (year, month, 1); var startingPos = firstOfMonth.getDay(); days += startingPos; document.calButtons.calPage.value = " Вс Пн Вт Ср Чт Пт Сб"; document.calButtons.calPage.value += "\n --------------------"; for (i = 0; i < startingPos; i++) { if ( i%7 == 0 ) document.calButtons.calPage.value += "\n "; document.calButtons.calPage.value += " "; } for (i = startingPos; i < days; i++) { if ( i%7 == 0 ) document.calButtons.calPage.value += "\n "; if (i-startingPos+1 < 10) document.calButtons.calPage.value += "0"; document.calButtons.calPage.value += i-startingPos+1; document.calButtons.calPage.value += " "; } for (i=days; i<42; i++) { if ( i%7 == 0 ) document.calButtons.calPage.value += "\n "; document.calButtons.calPage.value += " "; } document.calControl.Go.focus(); } function getDaysInMonth(month,year) { var days; if (month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12) days=31; else if (month==4 || month==6 || month==9 || month==11) days=30; else if (month==2) { if (isLeapYear(year)) { days=29; } else { days=28; } } return (days); } function isLeapYear (Year) { if (((Year % 4)==0) && ((Year % 100)!=0) || ((Year % 400)==0)) { return (true); } else { return (false); } } // End --> </SCRIPT> <!-- Вставьте эту часть кода в тег <BODY> --> <BODY onLoad="setToday()" bgcolor=#cccccc> <!-- Вставьте эту часть кода в html документ --> <CENTER> <H2>Выбери месяц</H2> <FORM NAME="calControl" onSubmit="return false;"> <TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0> <TR><TD COLSPAN=7> <CENTER> <SELECT NAME="month" onChange="selectDate()"> <OPTION>Январь <OPTION>Февраль <OPTION>Март <OPTION>Апрель <OPTION>Май <OPTION>Июнь <OPTION>Июль <OPTION>Август <OPTION>Сентябрь <OPTION>Октябрь <OPTION>Ноябрь <OPTION>Декабрь </SELECT> <INPUT NAME="year" TYPE=TEXT SIZE=4 MAXLENGTH=4> <INPUT TYPE="button" NAME="Go" value="Посмотреть!" onClick="selectDate()"> </CENTER> </TD> </TR> </FORM> <FORM NAME="calButtons"> <TR><TD align="center"><textarea FONT="Courier" NAME="calPage" WRAP=no ROWS=8 COLS=22></textarea></TD><TR><TD><CENTER> <INPUT TYPE=BUTTON NAME="previousYear" VALUE=" << " onClick="setPreviousYear()"> <INPUT TYPE=BUTTON NAME="previousYear" VALUE=" < " onClick="setPreviousMonth()"> <INPUT TYPE=BUTTON NAME="previousYear" VALUE="Сегодня" onClick="setToday()"> <INPUT TYPE=BUTTON NAME="previousYear" VALUE=" > " onClick="setNextMonth()"> <INPUT TYPE=BUTTON NAME="previousYear" VALUE=" >> " onClick="setNextYear()"> </CENTER></TD></TR> </TABLE></FORM></FONT> </body> </html>
Теги: ВЕЧНЫЙ КАЛЕНДАРЬ
Отредактировано VASDERJ (2012-02-18 21:04:40)