Взаимодействие между фреймами
Простейшая форма просмотра информации на WWW состоит в чтении страниц и переходах по ссылкам, при которых текущий документ в окне браузера замещается другим документом. При работе с фреймами можно организовать более удобную для пользователя схему загрузки документов.
Взаимодействие между фреймами заключается в возможности загрузки документов в выбранный фрейм по командам из другого фрейма. Для этой цели используется параметр TARGET тэга <А>. Данный параметр определяет имя фрейма или окна браузера, в которое будет загружаться документ, на который указывает данная ссылка. По умолчанию при отсутствии параметра TARGET документ загружается в текущий фрейм (или окно).
Имена фреймов должны начинаться с латинской буквы или цифры. В качестве имени может задаваться имя существующего окна или фрейма, а может указываться новое имя, под которым будет открыто новое окно. Имеется четыре зарезервированных имени, при задании которых выполняются специальные действия. Эти имена начинаются с символа подчеркивания (_): "_blank", "_self", "_parent" и "_top" (Описание данных параметров рассмотрено выше). Любое другое имя, начинающееся с символа "подчеркивание", недопустимо.
Приведем примеры взаимодействия между фреймами и отдельными окнами браузера. Рассмотрим следующий HTML-код:
<HTML>
<HEAD>
<TITLE>Использование фреймов</TITLE>
</HEAD>
<FRAMESET COLS=2*,*,*>
<FRAME SRC=frame_a.htm NAME="A">
<FRAME SRC=empty.htm NAME="B">
<FRAME SRC=empty.htm NAME="C">
</FRAMESET>
</HTML>
В этом HTML-документе дается описание структуры, состоящей из трех фреймов с именами "А", "B" и "C". Имена фреймов потребуются в дальнейшем для организации ссылок между фреймами. Заметим, что на фрейм с именем "А" в данном примере ссылок не будет, поэтому он мог быть оставлен без имени вообще. При загрузке приведенного выше документа в браузер во фреймах будет отображена информация, содержащаяся в файлах, определяемых параметром SRC. Во фрейм "А" попадет содержимое файла frame_a.htm, а остальные два фрейма получат данные из файла empty.htm, который не имеет отображаемых данных. Еще раз напомним, что HTML-документ, описывающий структуру фреймов, не имеет раздела <BODY>.
Приведем текст файла с именем frame_a.htm:
<HTML>
<HEAD>
<TITLE>Документ для фрейма A</TITLE>
</HEAD>
<BODY>
<A HREF="test.htm" TARGET="B">1.Загрузка документа во фрейм В </А><P>
<A HREF="test.htm" TARGET="C">2.Загрузка документа во фрейм С </А><P>
<A HREF="test.htm" TARGET="D">3.Загрузка документа в окно с именем D </A><P>
<A HREF="test.htm" TARGET="_blank">4.Загрузка окумента в новое окно </А><P>
<A HREF="test.htm" TARGET="_top">5.Загрузка документа в полное окно </А><P>
<A HREF="test.htm" TARGET="_self">6.Загрузка документа в текущий фрейм </А>
</BODY>
</HTML>
Этот документ является полным HTML-документом, имеющий разделы <HEAD> и <BODY> и, в свою очередь, имеет ссылки на файл с именем test.htm, располагающийся в том же самом каталоге, что и файл frame_a.htm.
Текст файла test.htm крайне прост:
<HTML>
<HEAD>
<TITLE>Тестовый документ</TITLE>
</HEAD>
<BODY>
Текст тестового документа
</BODY>
</HTML>
Файл frame_a.htm, содержимое которого загрузилось во фрейм "А", имеет шесть ссылок на один и тот же файл test.htm с различным значением параметра TARGET.
Рассмотрим действия, которые будут происходить при реализации этих ссылок.
Первая ссылка со значением TARGET="B" будет загружать файл test.htm во фрейм с именем "В".
Вторая ссылка выполнит те же действия для фрейма "C". Изначально во фреймах "B" и "C" ничего нет (точнее загружено содержимое пустого файла empty.htm). Реализация первой и второй ссылок заполнит эти фреймы.
Третья ссылка со значением TARGET="D" приведет к образованию нового окна браузера с именем "D" и загрузке в него файла test.htm. Заметим, что форма записи этой ссылки ничем не отличается от первых двух. Различие состоит в том, что в первых двух случаях ссылки были даны на существующие фреймы, имена которых были определены в файле со структурой фреймов, а в данном случае ссылка дана на несуществующий объект. Если данная ссылка будет выполнена хотя бы один раз, то окно с именем "D" будет образовано и повторный переход по ссылке лишь перезагрузит данные в существующее теперь окно "D". Конечно, пользователь может в любой момент его закрыть и вновь образовать выбором данной ссылки.
Четвертая ссылка со значением TARGET="_blank" создаст новое окно без имени и загрузит туда требуемый документ. Любое повторение данной ссылки будет открывать еще одно окно браузера.
Пятая ссылка со значением TARGET="_top" загрузит документ в полное окно вместо всей фреймовой структуры. При таком значении параметра TARGET новое окно не образуется. Возврат к фреймовой структуре возможен нажатием кнопки «Back».
Последняя ссылка со значением TARGET="_self" загрузит документ во фрейм "А" на место документа со ссылками. В данном случае результат эквивалентен выполнению ссылки без параметра TARGET.
Примечание
Имена фреймов или окон браузера не следует путать с названиями загружаемых документов. Имена фреймов при просмотре нигде не видны, они требуются только для организации взаимодействия и поэтому скрыты от пользователя. Увидеть их можно только при просмотре исходного текста HTML-файлов.
Имена фреймов и окон сравниваются с учетом регистра символов. Так, например, фреймы с именами "frame_1" и "Frame_1" будут различны.
Совет
Напомним, что названия загружаемых документов задаются тэгом <TITLE>. Если документ загружен в полное окно, то его название выдается в самой верхней части окна браузера. Если же документ загружается во фрейм, то его название нигде не отображается, а в верхней части окна по-прежнему будет располагаться название документа, содержащего описание фреймовой структуры документа. Поэтому названия документов, предназначенных для просмотра во фреймах, не имеют большого значения. Например, на последнем рисунке один и тот же документ загружен во фреймы "В" и "С", а также в отдельное окно с именем "D", при этом название документа видно только в окне "D". Тем не менее, вряд ли стоит рекомендовать опускать названия документов, загружаемых во фреймы, так они могут появиться, например, в списке закладок (Bookmarks) при создании закладки на документ, расположенный во фрейме или списке просмотренных документов.
Избегайте коллизий в именах фреймов и окон. Хотя формально не запрещено иметь фреймы с одинаковыми именами, однако это может привести к путанице.
Попробуем сами
Задание.
Используя полученные знания, создайте страницу-справку по одной из следующих тем, ранее вами изученных в пределах данной дисциплины:
Работа с таблицами
Создание списков
Способы физического и логического форматирования текста
Работа с изображениями
Виды гиперссылок
МЕТА-теги
Работа с формами
Страница должна иметь следующий фреймовую структуру
Страница с Названием раздела – заголовок первого уровня и автором работы |
|
Страница-оглавление
|
Страница с контентом |
