Читайте также:
|
|
ЛАБОРАТОРНАЯ РАБОТА
Тема: Метод скрытых фреймов
Цель работы: Знакомство с методом организации обмена информацией между сервером и браузером без перезагрузки видимой части веб-страницы
Фрейм можно скрыть, если задать его высоту и/или ширину равной нулю. Однако при этом не теряется возможность загружать в него html-страницы, и выполнять содержащийся в них код Javascript. На этом свойстве основан метод скрытых фреймов для передачи информации.
Чтобы реализовать этого метод, создается фреймовая система с одним видимым и одним скрытым фреймом. Видимый фрейм — это то, что пользователь воспринимает как веб-страницу.
Когда необходимо обновить часть содержания этой страницы, чтобы избежать ее полной перегрузки, скрытый фрейм используется как промежуточное звено для выполнения запроса к серверу и получения новой информации. С помощью функций Javascript обеспечивается взаимообмен информацией между видимым и скрытым фреймами.
В реализации метода имеются различия, связанные с тем, каким методом выполняется запрос — GET или POST.
Задание.
На сервере хранится массив цитат, которые по одной нужно выводить на страницу (предположим, что имеется массив пять цитат).
Клиентская часть приложения содержит форму, в которой есть поле для ввода числа (определяющего номер цитаты) и область, куда эта цитата будет выводиться. После ввода в форму номера цитаты, соответствующий текст появляется в области цитат без видимой перезагрузки страниц.
I. Передача параметров запроса методом GET.
1. Создать html-документ, описывающий фреймовую систему типа строки, состоящую из двух фреймов:
а) видимого с атрибутом name="visibleFrame" и
б) невидимого с атрибутом name="hiddenFrame".
Чтобы окно выглядело, как обычное, граница фреймовой системы (frameset) прорисовываться не должна (frameborder=0).
Чтобы сделать второй фрейм невидимым, первому фрейма отвести 100% высоты окна, а второму — 0. Чтобы нельзя было мышкой изменять размеры фреймов, необходимо запретить изменение их размеров (noresize="noresize").
В первый фрейм загружается файл видимой части страницы. У второго фрейма атрибут source задать как "about:blank" (пустой документ).
2. Создать файл, с формой для выполнения запроса.
Форма содержит текст"Ввведите номер цитаты (1-5)", текстовое поле для вввода номера и кнопку "Запрос".
При нажатии этой кнопки должна быть вызвана функция createRequest, которая формирует url со строкой запроса, содержащей номер запрашиваемой цитаты, и использует этот url для перезагрузки документа в скрытый фрейм (обработка onclick для кнопки).
После того, как скрытый фрейм получит запрошенную информацию, он передаст ее в видимый фрейм для вывода на экран. Поэтому в основном документе нужно еще создать
а) элемент div, в который будет выводиться текст цитаты, и
б) подготовить функцию insertQuote, которая через параметр принимает от скрытого фрейма символьную строку, и с помощью свойства innerHTML вставляет ее в подготовленный div.
3. В скрытый фрейм будет помещаться php-файл, в котором
а) определяется массив цитат,
б) имеется php-код для нахождения индекса запрошенной цитаты и получения ее текста,
в) в javascript-обработчике события onload скрытого фрейма предусмотривается вызов функции insertQoute, определенной в видимом фрейме.
Текст цитаты может быть вставлен с помощью php-переменной непосредственно в обработчик onload, или в php-файле может быть предусмотрен элемент div, в котором в скрытый фрейм передается нужный текст, а после загрузки страницы цитата извлекается из этого элемента и передается в видимый фрейм.
Дата добавления: 2015-10-26; просмотров: 304 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
ТЕОРЕТИЧНІ ВІДОМОСТІ | | | The shopping centre |