Лекция: Иерархия и именование фреймов

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

4.6. Два фрейма


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

Иерархия фреймов здесь получается следующая:

· window

o leftframe

o rightframe

Из основного окна (из скрипта, который можно было поместить в контейнер <HEAD> ) обратиться к левому фрейму можно с помощью window.leftframe, к правому — window.rightframe. Из каждого фрейма обратиться к основному окну можно какwindow.parent либо window.top (что в данном случае равносильно) или даже просто parent и top (так как приставкуwindow можно опускать). Наконец, из левого фрейма обратиться к правому фрейму можно как parent.rightframe илиtop.rightframe.

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

4.7. Три фрейма


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

Фрейма с именем rightframe теперь не существует. Более того, все три фрейма непосредственно подчинены главному окну, т.е. иерархия выглядит следующим образом:

· window

o leftframe

o topframe

o botframe

Следовательно, мы можем поместить в контейнер <HEAD> следующий скрипт, устанавливающий цвет фона для всех трехфреймов: (открыть)

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

Основной документ Документ в правом фрейме ( right.htm )
<HTML><HEAD></HEAD> <FRAMESET COLS=«50%,*»> <FRAME NAME=leftframe SRC=left.htm> <FRAME NAME=rightframe SRC=right.htm> </FRAMESET></HTML> <HTML><HEAD></HEAD> <FRAMESET ROWS=«50%,*»> <FRAME NAME=topframe SRC=top.htm> <FRAME NAME=botframe SRC=bottom.htm> </FRAMESET></HTML>

В этом случае иерархия фреймов будет выглядеть иначе:

· window

o leftframe

o rightframe

§ topframe

§ botframe

Теперь чтобы из главного окна обратиться ко всем трем фреймам и установить в них те же цвета фона, следует писать:

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

еще рефераты
Еще работы по информатике