Kniga-Online.club

Игорь Квинт - HTML, XHTML и CSS на 100%

Читать бесплатно Игорь Квинт - HTML, XHTML и CSS на 100%. Жанр: Интернет издательство -, год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

В листинге 10.1 представлен пример сценария, демонстрирующий рассмотренные ранее правила записи свойства и метода объекта Document.

Листинг 10.1. Свойство и метод объекта Document

<html>

<head>

<title>Hello!</title>

</head>

<body>

<script language="JavaScript">

document.write("Hello world!"); //пишем текст на странице

document.bgColor="yellow" //устанавливаем желтый фон страницы

</script>

</body>

</html>

Обратите внимание, что строки внутри сценария отделяются друг от друга точкой с запятой. Данный сценарий меняет фоновый цвет веб-страницы и выводит текст Hello world! (рис. 10.1).

Рис. 10.1. Вывод текста и изменение фонового цвета страницы

Таким образом, каждый элемент браузера и HTML-документа для сценария на JavaScript предстает в виде объекта. И каждый такой объект может иметь определенные свойства и методы. Можно сказать, что свойства объектов – это данные, связанные с объектом, методы – функции для обработки данных объекта. При этом у разных объектов разные свойства и методы. Более того, по отношению друг к другу объекты не равноценны. В JavaScript существует строгая иерархия объектов.

10.2. Родительские и дочерние объекты

Согласно правилам языка JavaScript все элементы на веб-странице выстраиваются в иерархическую структуру. Каждый объект является потомком объекта более высокого уровня.

Иерархия объектов JavaScript показана на схеме, представленной на рис. 10.2.

Рис. 10.2. Иерархия объектов в языке JavaScript

Родительским по отношению ко всем остальным объектам является объект Window, расположенный на самом верхнем уровне иерархии. Он представляет окно браузера и создается при его запуске. Свойства объекта Window относятся ко всему окну, в котором отображается документ.

Прямыми потомками объекта Window являются объекты Document, History, Location, Frame. Свойства объекта History представляют адреса ранее загруженных веб-страниц. Свойства объекта Location связаны с URL-адресом документа, отображаемого в окне браузера в данный момент, объекта Frame – со специальным способом представления данных в HTML-документе через фреймы.

Для каждой веб-страницы создается один объект Document. Он содержит другие объекты – объекты HTML. Это различные элементы веб-страницы: формы, ссылки на другие HTML-документы или локальные ссылки внутри одного документа, объекты, определяющие URL-адрес, и т. д. Все эти объекты являются дочерними для объекта Document.

Если в HTML-документе имеются формы, то они также предстают в виде иерархического набора объектов. Сама форма соответствует объекту Form, выступающему дочерним по отношению к объекту Document. Объект Fo rm может включать в себя такие объекты, как кнопки, переключатели, поля для ввода текстовой информации. Все элементы формы являются ее дочерними объектами.

Иерархия объектов внутри веб-страницы задается вложенностью HTML-элементов друг в друга и текста внутрь элементов. Объекты, имеющие открывающий и закрывающий теги (элементы-контейнеры), могут иметь дочерние объекты. Текст, атрибуты и элементы типа img, не имеющие закрывающего тега, не могут иметь дочерних объектов.

Чтобы лучше понять иерархию объектов в HTML-документе, рассмотрим простейший пример (листинг 10.2).

Листинг 10.2. Иерархия объектов в HTML-документе

<html>

<head>

<title>javascript objects</title>

</head>

<body>

<h1>Объекты JavaScript</h1>

Все элементы этой страницы являются объектами

</body>

</html>

Разберем этот документ с точки зрения иерархии объектов в языке JavaScript. Самому HTML-документу соответствует объект Document. Он является родителем для всех элементов, расположенных на веб-странице. Эти элементы принято называть узлами, а их иерархию – деревом HTML-документа.

Узел HTML является родительским по отношению ко всем остальным элементам веб-страницы. Узел HEAD имеет один дочерний узел TITLE. В свою очередь, узел TITLE имеет свой дочерний узел – текст Объекты JavaScript. BODY имеет два дочерних узла: H1 и P. Текст Все элементы этой страницы являются объектами выступает дочерним по отношению к P. Соответственно, текст Объекты JavaScript является дочерним объектом по отношению к H1.

Таким образом, с точки зрения сценария JavaScript браузер и HTML-документ представляются иерархически организованным набором объектов. Обращаясь к свойствам и методам этих объектов, можно выполнять различные операции над окном браузера, загруженным в это окно HTML-документом, а также над отдельными элементами в HTML-документе.

10.3. Объекты браузера

Объекты браузера являются тем интерфейсом, с помощью которого сценарий JavaScript взаимодействует с пользователем и HTML-документом, загруженным в окно браузера, а также с самим браузером. Рассмотрим подробнее каждый из объектов браузера.

Объект Window

Объект Window представляет собой окно браузера и является родительским по отношению ко всем остальным объектам в языке JavaScript. Он имеет свойства, описывающие размеры окна, расположенные в окне фреймы, имя окна и содержимое строки состояния окна браузера.

• defaultStatus – сообщение, отображаемое в строке состояния браузера по умолчанию.

• status – текущее сообщение, отображаемое в строке состояния браузера.

• frames – массив всех фреймов данного окна.

• length – количество фреймов в родительском окне.

• name – имя окна, указанное при его открытии методом open(), а также в атрибуте target элемента A или в атрибуте name элемента FORM.

• parent – синоним имени окна, относится к окну, содержащему набор фреймов.

• self – синоним имени окна, относится к текущему окну.

• top – синоним имени окна, относится к окну верхнего уровня.

• window – синоним имени окна, относится к текущему окну.

• Свойства window и self – синонимы. Вы можете применять любое из них по своему усмотрению, результат будет одинаков.

• Свойства frames, length, parent и top применяются, когда в окно загружен HTML-документ с фреймами. Анализируя свойство length, вы можете определить количество фреймов в окне, а с помощью свойства frames (которое является массивом) получить доступ к окнам этих фреймов. Об использовании фреймов в JavaScript было подробно рассказано в гл. 5.

• Рассмотрим использование свойств объекта Window на примере сценария из листинга 10.3.

Листинг 10.3. Свойство status объекта Window

<html>

<head>

<title>Свойство status объекта Window</title>

</head>

<body>

<script language="JavaScript">

window.status="ЗДЕСЬ БУДЕТ ВАШ ТЕКСТ!"

</script>

Обратите внимание на текст в строке состояния вашего браузера!

</body>

</html>

Сценарий позволяет изменить текст в строке состояния браузера (рис. 10.3).

Рис. 10.3. Изменение текста в строке состояния браузера

Этот механизм удобно использовать при работе со ссылками. Вместо того чтобы выводить на экран URL-ссылку, вы можете объяснять пользователю краткое содержание загружаемой по ней веб-страницы.

Среди методов, определенных для объекта Window, можно отметить методы, предназначенные для открытия новых окон и закрытия существующих, для отображения на экране диалоговых панелей с сообщениями и методы для установки таймера.

• alert() – отображение диалоговой панели Alert (Предупреждение) с сообщением и кнопкой OK.

• close() – закрытие окна.

• confirm() – отображение диалоговой панели Confirm (Подтверждение) с кнопками OK и Отмена.

• prompt() – отображение диалоговой панели Prompt (Запрос) с полем ввода.

• open() – открытие окна.

• setTimeout() – установка таймера.

• clearTimeout() – сброс таймера.

Рассмотрим практические примеры использования каждого из этих методов.

Метод alert() применяется для вывода на экран простейшей диалоговой панели, отображающей какое-либо сообщение. После вызова этого метода выполнение сценария задерживается до тех пор, пока пользователь не нажмет кнопку OK в окне с сообщением.

Пример сценария, в котором используется метод alert(), приведен в листинге 10.4.

Листинг 10.4. Использование метода alert

<html>

<head>

<title>Метод alert</title>

</head>

<body>

<script language="JavaScript">

alert("Добро пожаловать!")

</script>

</body>

</html>

Приведенный в примере сценарий выдает пользователю окно с сообщением Добро пожаловать! (рис. 10.4).

Рис. 10.4. Окно с сообщением

Внимание!

При вызове метода alert() не нужно указывать объект, для которого вызывается метод, – объект Window. Если при вызове метода объект не указан, интерпретатор сценария, встроенный в браузер, предполагает, что метод относится к объекту Window. Тем не менее вы можете явно указывать объект window: window. alert(). Результат будет тем же самым.

С помощью метода confi rm() также можно отобразить на экране диалоговую панель с вашим сообщением, однако эта панель содержит две кнопки – OK и Отмена. В зависимости от того, какая кнопка будет нажата, метод возвратит значение true или false. Поэтому данный метод часто применяется в сценариях с условиями if…else.

Перейти на страницу:

Игорь Квинт читать все книги автора по порядку

Игорь Квинт - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


HTML, XHTML и CSS на 100% отзывы

Отзывы читателей о книге HTML, XHTML и CSS на 100%, автор: Игорь Квинт. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*