Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Использование фреймов




Один из способов выдать сразу несколько файлов HTML на экране пользователя - это открыть несколько окон броузера. Другой путь состоит в том, чтобы разбить окно на несколько разделов. Эти разделы называются фреймами. В каждом фрейме показывается свой документ HTML. Каждый фрейм может иметь свои полосы прокрутки, ссылки, графические изображения и т.д. Фреймы могут функционировать независимо или влиять друг на друга, используя ссылки, указывающие на другие фреймы.
Для использования фреймов необходимо как минимум три файла: установачный файл и два исходных файла HTML. Установачный файл назначает исходные файлы HTML для каждого из окон, но не содержит собственного текста или графики. Исходные файлы HTML выдаются во фреймы и, как и любые другие файлы могут содержать ссылки, изображения, скрипты и пр.
Для создания установочного фрейма необходимо два тэга: <frameset>и <fram>. HTML-страница, создающая фреймы, в общем случае может выглядеть следующим образом:

<html><frameset cols="50%,50%"> <frameset rows="50%,50%"> <frame src="cell.htm"> <frame src="cell.htm"> </frameset> <frameset rows="33%,33%,33%"> <frame src="cell.htm"> <frame src="cell.htm"> <frame src="cell.htm"> </frameset> </frameset> </html>

Внутри тега <frameset> мы использовали свойства rows и cols. Это означает, что фреймы будут расположены друг над другом или друг под друго соответсвенно. Фрагмент "33%,33%,33%" задает размеры открываемых окон. Этот фрагмент эквивалентен следующей записи "33%,33%,*" или задать размер фрейма в пиксилах, для чего достаточно после числа не ставить символ %. Любому фрейму можно присвоить уникальное имя, воспользовавшись в тэге <frame> атрибутом name. Такая возможность пригодится нам в языкеJavaScript для доступа к фреймам.
Тег <frame> содержит отрибуты, которые управляют различными свойствами фреймов.
BORDER=определяет ширину разделительной полосы между фреймами.
BORDERCOLOR=устанавливает цвет разделительной полосы между фреймами.
NORESIZE атрибут, запрещающий пользователю изменять размеры фреймов.
SCROLLING=задает, появляются ли в окне полосы прокрутки.
MARGINHEIGHT=добавляет пустое поле между верхней границей фрейма и началом текста или графики.
MARGINWIDTH=добавляет пустое поле между боковыми границами фрейма и текстом или графикой.

Следующий график показывает окно, содержащее три фреймов:

This frame is This frame is named listFrame named contentFrame | | | |-------------v------------------------------v----------| Music Club | Toshiko Akiyoshi || Artists | Interlude || | || Jazz | The Beatles || - T. Akiyoshi | Please Please Me || - J. Coltrane | || - M. Davis | Betty Carter || - D. Gordon | Ray Charles and Betty Carter || | || Soul | Jimmy Cliff || - B. Carter | The Harder They Come || - R. Charles | || ... | ... |-------------------------------------------------------| Alphabetical By category Musician Descriptions |----------------^-------------------------------------- | | This frame is named navigateFrame

Пример 1. Следующее утверждение создает frameset, показанный в предыдущем графике.

<FRAMESET ROWS="90%,10%"><FRAMESET COLS="30%,70%"><FRAME SRC=Category.html NAME="listFrame"><FRAME SRC=Titles.html NAME="contentFrame"></FRAMESET><FRAME SRC=Navigate.html NAME="navigateFrame"></FRAMESET>

Следующий график показывает иерархию фреймов. Все три фрейма имеют того же самого родителя, даже при том, что два из фреймов определены внутри отдельного frameset. Это, потому что родитель фреймов есть родитель окно, и фрейм, расположенный не в frameset, определяет окно.

top | +--listFrame (Category.html) | +--contentFrame (Titles.html) | +--navigateFrame (Navigate.html)

Вы можете обращаться к предыдущим фреймам, используя массив frames следующим образом. (Для информации относительно массива frames, смотрите объект frame.)

  • listFrame - top.frames [0]
  • contentFrame - [1] top.frames
  • navigateFrame - top.frames [2]

Пример 2.Вы можете создавать окно подобно предыдущему, но в котором вершина двух фреймов имеют отдельного родителя из navigateFrame. Верхний уровень frameset будет определен следующим образом:

<FRAMESET ROWS="90%,10%"><FRAME SRC=Muskel3.html NAME="upperFrame"><FRAME SRC=Navigate.html NAME="navigateFrame"></FRAMESET>

Файл Muskel3.html содержит следующие утверждения для верхних фреймов и определяют frameset:

<FRAMESET COLS="30%,70%"> <FRAME SRC=Category.html NAME="listFrame"> <FRAME SRC=Titles.html NAME="contentFrame"> </FRAMESET>

Следующий график показывает иерархию фреймов. UpperFrame и navigateFrame родитель: верхнее окно. ListFrame и contentFrame родитель: upperFrame.

top | | +--listFrame | | (Category.html) +---upperFrame------| | (muskel3.html) | | +--contentFrame | (Titles.html) | +---navigateFrame (Navigate.html)

Вы можете обращаться к предыдущим фреймам, использующим массив frames следующим образом. (Для информации относительно массивов frames, смотрите объект frame.)

  • upperFrame - top.frames [0]
  • navigateFrame - [1] top.frames
  • listFrame - upperFrame.frames [0] или top.frames [0] .frames [0]
  • contentFrame - upperFrame.frames [1] или top.frames [0] .frames [1]

Поделиться:

Дата добавления: 2015-09-15; просмотров: 113; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.008 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты