Стандартным является размещение сценария в контейнере тега <SCRIPT>,T.e. между тегами <SСRIРТ> и </SСRIРТ>. Встречая тег <SCRIPT>, браузер «понимает», что за ним начинается код сценария. Все, что находится вне этих тегов, браузер воспринимает как html-код. Контейнер <SCRIPT> может располагаться в любом месте html-документа и даже не один раз. Одним из параметров тега <SCRIPT> является LANGUAGE, который определяет используемый язык сценария (JavaScript, Jscript, VBScript, VBS), но его можно не писать. Если атрибут не указан, то в Internet Explorer подразумевается JavaScript.
Старые браузеры, появившиеся раньше JavaScript, игнорируют теги <SCRIPT> и <SCRIPT>, а все что находится между ними, интерпретируют как содержимое html-документа. Рекомендуется помещать операторы языка JavaScript в дескрипторы комментария <!-- и -->. Новые браузеры, поддерживающие сценарии, будут игнорировать эти символы, выполняя код сценария, а старые, наоборот.
Пример:
<SCRTPT LANGUAGE=“JavaScript” >
<!--
// код сценария
//-->
</SСRIРТ>
Сценарий, определяющий площадь прямоугольного треугольника по катетам. Сценарий разместим в разделе <BODY> html-документа:
|
|
<HTML>
<HEAD>
<TITLE>первый сценарий в документе</ТIТLЕ>
</HEAD>
<BODY>
<Р>Страница, содержащая сценарий.</Р>
<SCRIPT>
var a=8; h=10
document.write("Площадь прямоугольного треугольника равна ",a*h/2,".")
</SCRIPT>
<Р>Конец формирования страницы, содержащей сценарий. </Р>
<BODY>
</HTML>
Вопросы для повторения
1. Какие литералы существуют в JavaScript?
2. Как объявляются переменные в языке JavaScript?
3. Где описываются локальные переменные?
4. Где описываются глобальные переменные?
5. Где в HTML-документе можно разместить сценарий?
Иерархическая структура
объектной модели документа DOM
Средством для взаимодействия сценариев JavaScript с содержимым HTML-страницы является объектная модель документа или DOM. Среди объектов DOM имеются основные объекты и, присутствующие всегда, а также объекты, соответствующие различным элементам на странице. Для упрощения работы с объектами DOM они организованы в виде иерархии.
Итак, на вершине иерархической лестницы находится объект window (окно браузера). Он является одним из ключевых объектов языка JavaScript и содержит информацию об окне браузера, в которое загружена web-страница. Любые изменения в окне браузера связаны с изменением свойств и вызовом методов этого объекта, а также вложенных в него объектов. Именно поэтому в сценариях допускается обращение к свойствам и методам объекта window без явного указания его имени. Возникает вопрос: зачем вводить какой-то объект, если потом его имя можно нигде не использовать? В некоторых случаях, как управление фреймами или всплывающими окнами, работать в сценарии приходится сразу с несколькими объектами window. В этих случаях необходимо конкретизировать, для какого именно объекта вызывается то или иное свойство или метод.
|
|
Основными вложенными объектами window являются объекты document, history, location. Объект document содержит всю информацию об элементах html-страницы и позволяет их изменять. Каждому html-тегу соответствует отдельный объект и все они являются дочерними объектами document. Объект location предоставляет доступ к URL текущей страницы, а объект history – к списку посещенных страниц браузера.
Об объектах navigator и screen нельзя сказать, что они являются дочерними объектами window, поэтому на рисунке они расположены на одном уровне с объектом window. Хотя в отдельные моменты работы браузера объектов window может быть несколько, объекты navigator и screen всегда существуют в единственном экземпляре и являются «истинными статическими» объектами. Иначе говоря, их содержимое не может быть изменено средствами сценария. Объекты navigator и screen содержат, соответственно, информацию об используемом браузере и настройках экрана пользователя.
Объект window
Методы объекта window: