Журнал Начинающего Программиста 19, 2010-09-26 10:33
Здравствуйте,
JavaScript
Встраивание в HTML-документ
Для встраивания скриптов в тело HTML-документа используется
контейнер SCRIPT. Не все
программы просмотра способны распознавать и исполнять скрипты, поэтому
само тело скрипта помещается в контейнер комментария. Для
определенности рассмотрим небольшой пример:
Код:
<HTML> <!-- Author: Lord Expert Date: September 26, 2010 --> <HEAD> <TITLE>Registration</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-- The JavaScript Functions Definition function help_win() { Help = window.open("REG_HELP.HTM", "Help", "scrollbars=yes,resizable=yes") } function main_menu() { Main_menu = window.open("MAIN_M.HTM", "Main_menu") } // The end of JavaScript Functions Definition --> </SCRIPT> </HEAD> <BODY> <CENTER> <TABLE> <TR><TH><IMG SRC="RADLEG3.GIF"></TH><TH><H2>ISTW. Project RADLEG(#245)</H2> RRC "Web Institute"<BR> <I>September 26, 2010</I> </TH></TR> </TABLE> </CENTER> <HR> <CENTER> <h2>Registration Form</h2> <hr> ...... Текст страницы. ..... <hr> <FORM NAME=help_call> <TABLE BORDER=0> <TR> <TD><INPUT NAME=next TYPE=button VALUE=Next onClick="main_menu()"></TD> <TD><INPUT NAME=help TYPE=button VALUE=Help onClick="help_win()"></TD> </TR> </TABLE> </FORM> <hr> </CENTER> </BODY> </HTML>
В данном примере в заголовок документа (контейнер HEAD) включен
контейнер SCRIPT. До недавнего
времени атрибут LANGUAGE в
этом контейнере не являлся обязательным. Но с момента появления VBSCRIPT смысл в указании типа языка
появился - Navigator не понимает скриптов на других языках. Отсутствие атрибута может привести
к ошибкам при отображении гипертекстовых страниц.
Далее в тексте страницы определен комментарий, в который включен
текст скрипта. Начинается комментарий со строки:
<!-- The JavaScript Functions Definition
и кончается строкой:
// The end of JavaScript Functions Definition -->
Внутри контейнера скрипта определены две функции пользователя: help_win() и main_menu(). Смысл этих функций
достаточно прозрачен. Help_win()
предназначена для организации контекстно зависимого help, а main_menu() осуществляет допуск
пользователя к главному меню Website. Обе функции используют один и тот
же метод open (встроенную
в JavaScript функцию, которая определена над объектом window)
для того, чтобы открыть новое окно Netscape
Navigator и загрузить в него гипертекстовые документы. При этом
функция main_menu порождает стандартное окно (с кнопочками,
иконками и т.п.), а функция
help_win() окно без стандартных атрибутов. У этого окна имеются
только линейки прокрутки (scroll
bars).
Вызов функций осуществляется после нажатия на соответствующую
кнопку, которые определены в HTML-форме help_call. Таким образом выполнение
функций будет осуществлено только в том случае, если произойдет
событие, описанное атрибутом onClick
в контейнере INPUT
соответствующего поля формы.
Если быть более точным, то приведенный пример - это фрагмент,
реализующий регистрацию пользователя. К моменту его выполнения окно
главного меню уже открыто, поэтому создание этого окна при выборе
кнопки "NEXT" не происходит, а
текст загружается в уже открытое окно.