Введение в JavaScript

       

Именование фреймов


Обратиться к фрейму можно либо по имени, либо как к элементу массива frames[]. Рассмотрим HTML-документ:

<HTML> <HEAD> ... </HEAD> <FRAMESET COLS="20%,*"> <FRAME NAME=left SRC=frame1.htm> <FRAME NAME=right SRC=frame2.htm> </FRAMESET> </HTML>

Предположим, что на странице, загруженной в правый фрейм, есть две картинки. Для изменения свойства src второй из них можно использовать следующие записи:

top.frames[1].images[1].src="pic.gif";

или

top.right.images[1].src="pic.gif";

В связи с индексированием фреймов возникает вопрос о том, как они нумеруются в одномерном встроенном массиве фреймов объекта Window. Проиллюстрируем это на примере: (открыть)

<FRAMESET ROWS="50,*,50"> <FRAME NAME=top SRC=top.html> <FRAMESET COLS="100,*,100"> <FRAME NAME=left SRC=left.html> <FRAME NAME=center SRC=center.html> <FRAME NAME=right SRC=right.html> </FRAMESET> <FRAME NAME=bottom SRC=bottom.html> </FRAMESET>


Рис. 14.5.  Центральный фрейм, разбитый на три вертикальных

Построим теперь нечто перпендикулярное предыдущему примеру – столбец из трех фреймов: (открыть)

<FRAMESET COLS="100,*,100"> <FRAME NAME=left SRC=top.html> <FRAMESET ROWS="60,*,60"> <FRAME NAME=top SRC=left.html> <FRAME NAME=center SRC=center.html> <FRAME NAME=bottom SRC=right.html> </FRAMESET> <FRAME NAME=right SRC=bottom.html> </FRAMESET>


Рис. 14.6.  Центральный фрейм, разбитый на три горизонтальных

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



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