
- •Динамические веб-страницы на основе JavaScript
- •Основные понятия
- •Объекты в JavaScript
- •Событие в браузере и обработчик события
- •События, генерируемые html-элементами
- •Изменение свойств элемента
- •Обозначение html-элемента с помощью идентификатора
- •Доступ к свойствам html-элемента
- •Скрытие и показ элемента
- •Несколько событий в одном элементе
- •3. Изменение атрибутов элемента
- •Изменение самого себя
- •Изменение размера элемента (атрибуты width и height)
- •Сдвиг картинки
- •1. Разместите на странице картинку и кнопку “в центр”, которая должна перемещать картинку примерно в центр экрана. 2. Добавьте кнопку “Обратно”, которая должна возвращать картинку на место.
- •4. Переменная и функция
- •Имена переменных
- •Оператор присваивания
- •Изменение размера элемента относительно прежнего размера
- •Понятие функции
- •5. Окна браузеров: объект window
- •6. Практическое занятие по использованию объектов document и window
- •7. Условный оператор if
- •8. Вторая форма оператора if
- •9. Объект Date
- •10. Оператор цикла for
- •11. Математические вычисления в JavaScript
- •12. Массивы
- •13. Инструменты Dreamweaver для JavaScript
- •14. Объектная модель документа
- •15. Практическое занятие: демонстрация шахматной партии
9. Объект Date
Объект Date предназначен для манипуляций с датами и временами. Для создания новых объектов типа Date используется следующий конструктор: new Date() Этот конструктор создаёт новый объект типа Date с текущей датой и временем. Пример: сейчас = new Date();
Дата открытия страницы
В этом примере мы воспользуемся объектом Date и тремя его методами: getDate(), getMonth(), getFullYear(). Полный список свойств и методов объекта Math можно найти в справочнике языка JavaScript. Он находится по адресу ...\Справочники\Справочник JS\contents.htm. Чтобы открыть объект Date, на странице «Содержание» перейдите по ссылке «Глава 3.11. Дата и время: встроенный объект Date».
Метод getDate возвращает номер дня месяца. Результатом является целое число в диапазоне от 1 до 31. Например:
сейчас = new Date(); var день = сейчас.getDate(); window.alert(день); |
|
Метод getMonth возвращает номер месяца. Результатом является целое число в диапазоне от 0 до 11: 0 = январь, 1 = февраль, 2 = март, 3 = апрель, 4 = май, 5 = июнь, 6 = июль, 7 = август, 8 = сентябрь, 9 = октябрь, 10 = ноябрь, 11 = декабрь. Например:
сейчас = new Date(); var месяц = сейчас.getMonth(); window.alert(месяц); |
|
Метод getFullYear возвращает полный (четырехзначный) номер года. Например:
сейчас = new Date(); var год = сейчас.getFullYear(); window.alert(год); |
|
Рассмотрим текст сценария:
<script> сейчас = new Date(); var день = сейчас.getDate() var месяц = сейчас.getMonth() var год = сейчас.getFullYear() document.write("Здравствуйте! Вы открыли эту страницу " + день + "-" + месяц + "-" + год ) </script>
Код в действии Здравствуйте! Вы открыли эту страницу 31-0-2013
Конструктор new Date() создаёт новый объект сейчас с текущей датой и временем. Теперь на объект сейчас могут воздействовать методы getDate(), getMonth() и getFullYear(), они выдадут значения даты, месяца и года, которые сохраняются в соответствующих переменных. Для того, чтобы напечатать эти значения на странице, используется знакомый нам метод document.write().
Должно быть, вы заметили, что номер месяца на один меньше, чем нужно. Дело в том, что JavaScript любит считать от нуля. Tо есть, январь нулевой месяц и так далее. Так что же делать? Прибавить единицу, разумеется! Вот как это выглядит: месяц = сейчас.getMonth()+1;
Код в действии Здравствуйте! Вы открыли эту страницу 31-1-2013
Это уже правильный месяц, не так ли?
Задание 1
Напишите скрипт, который выведет время открытия страницы с датой, месяцем и годом, разделёнными двоеточием.
Текущее время
Метод getHours возвращает номер часа. Результатом является целое число в диапазоне от 0 до 23. Например:
сейчас = new Date(); var час = сейчас.getHours(); window.alert(час); |
|
Метод getMinutes возвращает минуты. Результатом является целое число в диапазоне от 0 до 59. Например:
сейчас = new Date(); var минуты = сейчас.getMinutes(); window.alert(минуты); |
|
Метод getSeconds возвращает секунды. Результатом является целое число в диапазоне от 0 до 59. Например:
сейчас = new Date(); var секунды = сейчас.getSeconds(); window.alert(секунды); |
|
Особенность объекта Date заключается в том, что при использовании конструктора new Date() создаётся экземпляр объекта, в который записывается время его создания и сохраняется неизменным. Поэтому для получения текущего времени необходимо обновлять экземпляр объекта достаточно часто с помощью метода setInterval.
Задание 2
Выведите в текстовое поле текущее время, обновляющееся каждую секунду.
Внешний вид
Задание 3
Разместите на странице три текстовых поля для ввода времени и кнопку «Включить». Напишите программу «будильника»: при нажатии на кнопку считывается время, введённое пользователем, и в назначенное время выводится сообщение «Пора!».
Внешний вид
if |
условный оператор |
getDate |
день |
getMonth |
месяц |
getFullYear |
год |
getHours |
час |
getMinutes |
минуты |
getSeconds |
секунды |