Встроить сценарий JavaScript в HTML-страницу можно несколькими способами:
1. Задать операторы языка внутри тэга-контейнера <script>.. ,</script> языка HTML. Браузеры, не поддерживающие какие-либо тэги HTML, их игнорируют, анализируя содержимое пропускаемых тэгов с точки зрения синтаксиса HTML. Это может приводить к ошибкам при отображении страницы. Поэтому операторы языка JavaScript помещаются в контейнер комментария <!-- … -->:
2. <script type="text/javascript" language="javascript">
3. <!-4. операторы JavaScript
5. //-->
6. </script> Символы (//) перед закрывающим тэгом комментария -- > являются оператором комментария JavaScript. Он необходим для правильной работы интерпретатора. Документ может содержать несколько тэгов <script>, расположенных в любом месте документа. Все они последовательно обрабатываются интерпретатором JavaScript по мере отображения частей документа в окне браузера. Поэтому рекомендуется размещать сценарии с глобальными функциями и переменными в разделе <head> документа. В этом случае все определения обрабатываются интерпретатором в начале загрузки документа и хранятся в памяти с первых моментов отображения документа в окне браузера.
7. Указать файл с кодом JavaScript в параметре src тэга <script>. В качестве значения параметра задается полный или относительный URL-адрес внешнего файла, содержащего программный код на языке JavaScript. Задание закрывающего тэга </script> обязательно, независимо от того, заданы или нет операторы внутри тэга. Связываемый внешний файл не должен содержать тэгов HTML и должен иметь расширение .js:
8. <script type="text/javascript" language="javascript"
9. src="http:www.mysite.ru/functions/jsfuncs.js">
10. операторы JavaScript
11. </script>
12. Использовать выражения JavaScript в качестве значений параметров тэгов HTML. Эта процедура аналогична процедуре встраивания числовых или символьных примитивов HTML. Элементы JavaScript также располагаются между амперсандом (&) и точкой с запятой (;), но должны заключаться в фигурные скобки { } и использоваться только в качестве значений параметров тэгов HTML. Нельзя использовать элементы JavaScript в тексте HTML. Они интерпретируются только тогда, когда расположены справа от параметра и задают его значение. Пусть определена переменная barwidth, и ей присвоено значение 75. Следующий тэг нарисует горизонтальную линию длиной в 75% от горизонтального размера окна браузера:
13. <hr width="&{barWidth};%"/>
14. Определить обработчик событий в тэге HTML. Для совместимости с языками сценариев в некоторые тэги HTML были введены специальные параметры обработки возникающих событий. Значениями этих параметров могут быть операторы языка JavaScript. Обычно в качестве значения задается имя функции, которая вызывается, когда происходит соответствующее событие, определяемое параметром обработки события. Имя параметра начинается с приставки on, за которым следует имя самого события. Например, параметр обработки события click будет иметь имя onClick. События в основном связаны с действиями, производимыми пользователем с элементами форм HTML. Поэтому чаще всего перехват и обработка событий задается в параметрах элементов форм, что позволяет проверить введенную информацию перед ее отправкой на обработку. Функция или процедура это именованная последовательность операторов, которая выполняет определенную задачу и может возвращать некоторое значение. Функция в JavaScript определяется оператором fonction, имеющем следующий синтаксис:
15. function имя функции ( [параметры] ) {
16. [операторы JavaScript]
17. [return значение]
18. }
Параметры, передаваемые функции, разделяются запятыми. Необязательный оператор return в теле функции (блок операторов, заключенный в фигурные скобки), определяет возвращаемое функцией значение. Определение необходимых функций следует осуществлять в тэге <head>, так как все определенные в нем операторы сценария интерпретируются до отображения страницы, и, таким образом, будут известны в процессе отображения всей страницы.
Пример задания функции и ее вызова в процессе формирования документа:
<head>
<tit1e>Demo</tit1e>
<script type="text/javascript" 1anguage="javascript">
<!-- //Скрыть сценарий от браузеров: не поддерживающих JavaScript function square(number) { return number * number;)
//-- >
</script>
</head>
<body>
^>Начинается отображение страницы, в которую внедрен сценарий вычисления функции<^>
<script type="text/javascript" 1anguage="javascript"> <!-document.write("Значение, которое вычислялось, равно ", square(5), "."); //-- >
</script>
<p> Теперь формирование страницы закончено.</p>
</body> Пример явного вызова функции из сценария:
<head>
<tit1e>Demo</tit1e>
<script type="text/javascript" 1anguage="javascript">
<!-- //Скрыть сценарий от браузеров: не поддерживающих JavaScript function va1idate(form) { if(form.va1ue >=18)
{a1ert("Вы - совершеннолетний");
)
e1se {
a1ert ("Вы - несовершеннолетний");
)
)
//-->
</script>
</head>
<body>
<form name="form_1" action="HTMLPage.htm"> Ваш возраст: <input type="text" size="5" name="age" /> <hr/>
<input type="button" va1ue="Подтвердите" onc1ick="va1idate(this.form.age)"/>
</form>
</body> В этом примере обработчик события onclick кнопки формы связан с вызовом функции validate, которой передается значение, введенное в текстовое поле age. Имя поля задается параметром name. При нажатии на кнопку вызывается функция validate, отображающая сообщение в зависимости от введенного значения.
Параметр name элемента формы задает символическое имя элемента, которое можно использовать в операторах сценария для ссылки на соответствующий элемент. Передаваемый функции параметр this.form.age использует синтаксис объектноориентированных языков, обозначающий элемент с именем age (текстовое поле) формы. Ключевое слово this языка JavaScript означает в данном случае ссылку на текущую форму.
Браузер MSIE реализует собственную версию JavaScript, называемую JScript. Кроме того, для выполнения многих функций клиентские сценарии обращаются к интерфейсу объектной модели браузера. Эта модель отличается для разных браузеров.
⇐Javascript | Введение в технологии создания Интернет-узлов | Vbscript⇒