Главная → Уроки JavaScript → Урок 15. Работа с окнами
JavaScript - Урок 15. Работа с окнами
Работу с окнами мы рассмотрим на примере.Пусть у нас имеется страница, на которой расположены кнопки с названиями автомобилей и мы хотим, чтобы по щелчку по кнопке открывалось окно с картинкой этого автомобиля.
Код html-страницы будет следующим:
Код страницы ford.html будет следующим:
В наших функциях мы будем использовать два метода объекта window - open() и close(). Первый создает новое окно, второй - закрывает его.
На странице script.js напишем код функций, а затем разберем его:
У этого метода существует три параметра, каждый из которых заключается в кавычки:
- первый параметр указывает страницу, которую нужно загрузить в окно (например, ford.html),
- второй параметр задает имя открываемому окну (в нашем примере display_ford),
- третий параметр позволяет нам управлять процессом создания окна. Здесь можно задать размеры окна, указать, должно ли новое окно иметь строку статуса, панель инструментов или меню. В нашем примере, мы создали окно шириной 400 и высотой 300 пикселов, без строки статуса, панели инструментов и меню. А могли бы вместо no написать yes и тогда все бы это появилось в нашем окне.
Здесь же можно указать ряд других параметров:
location выводить строку URL
scrollbars добавлять линейку прокрутки, если документ не помещается на экране
resize позволять пользователю изменять размер окна
Если какие-либо параметры опущены (в нашем примере, это три только что перечисленных), то из значение приравнивается к no. Обратите внимание, что все параметры перечисляются через запятую, НО БЕЗ ПРОБЕЛА!
В последней функции, мы использовали метод close(), который закрывает текущее окно.
Посмотрите на пример в действии:
confirm
Показывает диалоговое окно с указанным сообщением и кнопками "OK" и "Cancel". Сообщение должно побуждать пользователя принять решение. Подтверждение возвращает методу true, если пользователь выбирает "OK" или false если пользователь выбирает "Cancel".
Синтаксис:
confirm ("сообщение")
Пример:
пусть у нас есть какая-нибудь кнопка "Открыть окно" и мы хотим, чтобы по щелчку по ней появлялось диалоговое окно, позволяющее уточнить действительно ли мы хотим его открыть (для примера пусть открывается окно с изображением Volvo из предыдущего примера).
Код html-страницы для этого примера прост:
Хотелось бы пояснить один нюанс, в программировании в условии оператора if, если метод возвращает либо истину (true), либо ложь (false), часть ==true опускается. Иными словами вместо:
prompt
Этот метод отображает диалоговое окно ввода пользователя.
Синтаксис:
prompt(сообщение, [значение по умолчанию])
где
[] - означают, что параметр необязателен, т.е. его можно опустить.
Пример:
Нажмите на кнопку ниже:
Итак, код html-страницы как всегда прост:
setTimeout
Этот метод делает что-либо по истечении указанного в миллисекундах промежутка времени.
Синтаксис:
setTimeout (что делать, время в миллисекундах)
Пример:
Пусть при нажатии на некоторую кнопку "Можно начинать?", через 3 секунды появляется окно сообщений с текстом "Начинайте!".
Код самой функции прост:
clearTimeout
Этот метод отключает таймер, установленный при помощи метода setTimeout.
Синтаксис:
clearTimeout (timerID)
где
timerID - уникальный идентификатор таймера, полученный при его установке.
Давайте немножно переделаем наш последний пример, а именно сделаем две кнопки "Можно начинать?" и "Отменить вопрос":
При этом мы изменили только html-код страницы на следующий:
setInterval
В отличие от setTimeout, этот метод выполняет код много раз, через равные промежутки времени, пока не будет остановлен при помощи метода clearInterval.
Синтаксис:
timerID=setInterval(что делать, время в миллисекундах)
где
timerID - уникальный идентификатор таймера, полученный при его установке.
Давайте применим этот метод к предыдущему примеру:
Собственно, на этом подошли к концу и наши уроки по JavaScript. Конечно, мы не рассмотрели все возможности этого языка, но как показывает практика, этого и не нужно. Все самое необходимое мы узнали, вы вполне в состоянии писать сценарии на этом языке.
Практика, практика и еще раз практика, а если в процессе у вас возникнут вопросы, то ответы на них без труда можно найти при помощи того же поисковика Google. Целью же наших уроков было ввести Вас в мир JavaScript и показать его основные возможности.
Но не спешите закрывать эту страницу. Как правило, сайтостроителей не интересуют детали реализации того или иного сценария, гораздо больше интересует возможность использовать уже готовые скрипты. Многие пользуются такими шаблонами, даже не вникая в основы JavaScript, что на мой взгляд не совсем правильно (ведь если что-то начнет работать не так, у таких любителей не будет возможности разобраться и поправить).
Другое дело, если использовать специальные библиотеки, которые заметно облегчают жизнь. Что такое библиотека? Это некий набор многократно используемых функций.
Ведь понятно, что для сайта, например, нужны графические эффекты. Вот кто-то постарался, написал, проверил и выложил это для всеобщего использования. Т.е. кто-то уже написал и протестировал в работе практически весь код, выполняющий определенные действия. Такие функции и объединяют в библиотеки. От вас же требуется только научиться использовать эти библиотеки для своих нужд. И тогда, может оказаться, что знаний, полученных в этих уроках по JavaScript вам более, чем достаточно.
Наиболее популярными библиотеками JavaScript являются Prototype и jQuery. Обусловлено это тем, что они предоставляют кросс-браузерный интерфейс к методам DOM (объектная модель документа). Т.е. используя эти библиотеки, Вы вряд ли столкнетесь с ситуацией, когда в одном браузере сценарий работает, а в другом - нет. А это очень большой плюс.
Лично я использую jQuery, а потому работе именно с этой библиотекой и будет посвящен отдельный курс уроков. Надеюсь, что и Вам эта библиотека придется по душе. А потому, до встречи в уроках jQuery.
Предыдущий урок Вернуться в раздел
Если этот сайт оказался вам полезен, пожалуйста, посмотрите другие наши статьи и разделы.
Код кнопки: |
Теперь нажмите кнопку, что бы не забыть адрес и вернуться к нам снова.
|