Java



           

Полезные функции и скрипты - часть 3


Рис. 5. Автоматическое проставление даты последнего обновления страницы Результат представлен на рис. 5. Поскольку была использована англоязычная версия Navigator 6.2, дата обновления странички также проставлена на английском.

Обратите внимание, что функция document.lastModified регистрозависима! Если по ошибке поставить в названии функции прописные буквы, код работать не будет.

Можно добавить на веб-страницу и другую полезную информацию, например, о текущей дате или дне недели (рис. 6). Рассмотрим пример такого кода, а заодно попытаемся его оптимизировать: <HTML> <HEAD> <TITLE> Текущая дата на страничке </TITLE> </HEAD> <SCRIPT LANGUAGE="JavaScript"> function cur_date() { var day = ""; var month = ""; var myweekday = ""; var year = ""; mydate = new Date(); myday = mydate.getDay(); mymonth = mydate.getMonth(); myweekday = mydate.getDate(); weekday = myweekday; myyear = mydate.getYear(); year = myyear if (myday == 0) day = " Воскресенье, " else if (myday == 1) day = " Понедельник, " else if ……… else if(myday == 6) day = " Суббота, " if (mymonth == 0) month = "Январь " else if (mymonth ==1) month = "Февраль " else if ……… else if (mymonth ==11) month = "Декабрь " if ((navigator.appName == "Microsoft Internet Explorer") && (year < 2000)) year="19" + year; if (navigator.appName == "Navigator") year=1900 + year; return ("<FONT face=Verdana size=2 color=BLUE> Сегодня ... " + day + month + myweekday + ", " + year + "</FONT>") } </SCRIPT> <BODY bgcolor="#FFFFF0" text="#000000"> <H3> С днем рождения, программер!</H3> <SCRIPT language="JavaScript"> document.write (cur_date()); </SCRIPT> </BODY> </HTML>

Рис. 6. Вывод на страницу текущей даты В этом примере использованы стандартные функции getDay(), getMonth() и getDate(), возвращающие, соответственно, номер дня недели, месяца и дату. Специфика их работы заключается в том, что отсчет ведется от нуля, а отсчет дней недели — еще и от воскресенья. Функция getYear() возвращает год после 1900.

Длинную и нудную конструкцию if … else можно заменить оператором switch: switch (myday) { case 0: {day = "Воскресенье"; break;} ……… case 6: {day = "Суббота"; break;} default: } switch (mymonth) { case 0: {month = "Январь"; break;} ……… case 11: {month = "Декабрь"; break;} default: } <!—..… --> return ("<FONT face=Verdana size=2 color=BLUE> Сегодня ... " + day + ", " + month + " " + myweekday + ", " + year + "</FONT>")




Содержание  Назад  Вперед