Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Рассмотрим сначала простой пример. Разделим экран на две вертикальные колонки:
<HTML><HEAD><TITLE>Левый и правый</TITLE></HEAD> <FRAMESET COLS="50%,*"> <FRAME NAME=leftframe SRC=left.htm> <FRAME NAME=rightframe SRC=right.htm> </FRAMESET></HTML>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.
Усложним пример: разобьем правый фрейм на два по горизонтали:
<HTML><HEAD><TITLE>Левый, верх и низ</TITLE></HEAD> <FRAMESET COLS="50%,*"> <FRAME NAME=leftframe SRC=left.htm> <FRAMESET ROWS="50%,*"> <FRAME NAME=topframe SRC=top.htm> <FRAME NAME=botframe SRC=bottom.htm> </FRAMESET> </FRAMESET></HTML>4.7. Три фрейма
Рис. 4.4. Правый фрейм разбит на два по горизонтали
Фрейма с именем rightframe теперь не существует. Более того, все три фрейма непосредственно подчинены главному окну, т.е. иерархия выглядит следующим образом:
· window
o leftframe
o topframe
o botframe
Следовательно, мы можем поместить в контейнер <HEAD> следующий скрипт, устанавливающий цвет фона для всех трех фреймов: (открыть)
<SCRIPT>window.onload=f;function f(){ window.leftframe.document.bgColor='blue'; window.topframe.document.bgColor='red'; window.botframe.document.bgColor='green';}</SCRIPT>Для того чтобы фрейм 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
Теперь чтобы из главного окна обратиться ко всем трем фреймам и установить в них те же цвета фона, следует писать:
window.leftframe.document.bgColor='blue'; window.rightframe.topframe.document.bgColor='red'; window.rightframe.botframe.document.bgColor='green';Таким образом, визуально на Web-странице мы получили тот же результат, что и с тремя фреймами, подчиненными одному старшему окну (см. пример 4.7). Однако этот вариант более гибкий: он позволяет работать независимо с фреймом rightframe в отдельном файле.
Дата публикования: 2015-01-24; Прочитано: 241 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!