Введение в JavaScript

Иерархия фреймов


Рассмотрим сначала простой пример. Разделим экран на две вертикальные колонки: (открыть)

<HTML> <HEAD> </HEAD> <FRAMESET COLS="50%,*"> <FRAME NAME=left SRC=left.html> <FRAME NAME=right SRC=right.html> </FRAMESET> </HTML>


Рис. 14.3.  Фрейм с двумя вертикальными колонками

Назовем окно, в которое помещают фреймы, _top(_parent).

Усложним пример: разобьем правый фрейм на два по горизонтали: (открыть)

<HTML> <HEAD> </HEAD> <FRAMESET COLS="50%,*"> <FRAME NAME=left SRC=left.html> <FRAMESET ROWS="50%,*"> <FRAME NAME=top SRC=top.html> <FRAME NAME=bottom SRC=bottom.html> </FRAMESET> </FRAMESET> </HTML>


Рис. 14.4.  Правый фрейм, разбитый на два по горизонтали

Обратите внимание на два момента: во-первых, следует различать _top и top, во-вторых, исчез фрейм   right. По поводу первого замечания: _top — это зарезервированное имя старшего окна, а top — имя фрейма, которое назначил ему автор страницы. По поводу второго замечания: старшим окном для всех фреймов является все окно браузера, фрейма с именем right в данном случае не существует.

Для того чтобы он появился, нужно свести оба наших примера в один. Это значит, что во фрейм   right мы снова должны загрузить фреймовый документ.

Первый документ:

<HTML> <HEAD> </HEAD> <FRAMESET COLS="50%,*"> <FRAME NAME=left SRC=left.html> <FRAME NAME=right SRC=right.html> </FRAMESET> </HTML>

Второй документ (right.htm):

<HTML> <HEAD> </HEAD> <FRAMESET ROWS="50%,*"> <FRAME NAME=top SRC=top.html> <FRAME NAME=bottom SRC=bottom.html> </FRAMESET> </HTML>

В этом случае подчинение страниц будет выглядеть иначе, чем в примере с тремя фреймами.

Таким образом, мы получили тот же результат, что и с тремя фреймами и одним старшим окном. Однако этот вариант более гибкий: он позволяет задействовать фрейм, содержащий горизонтальную разбивку. Именно такой прием используется на домашней странице "Web-инжиниринг".

Такая интерпретация фреймовой структуры страницы находит отражение и в именовании фреймов JavaScript.



Содержание раздела