Книга: Справочник по Flash

getURL - Переход на веб-страницу

getURL - Переход на веб-страницу

getURL

(Глобальная функция)

Загружает документ с указанного адреса (URL) в окно, или передает переменные другому приложению по URL (выполняет сценарии на стороне сервера), либо генерирует событие Macromedia Director.

Синтаксис:

getURL(URL)getURL(URL, window)getURL(URL, window, method)

Аргументы:

Описание:

Функция getURL() используется для того, чтобы:

Чтобы загрузить документ в текущее окно или фрейм, просто укажите URL документа, не передавая аргументы window или method. Естественно, Flash поддерживает абсолютные URL (такие, в которых указаны протокол, например, "http:", а также имя сервера или аппаратного устройства) и относительные URL (те, которые заданы относительно текущего адреса):

// Абсолютный URL веб-страницыgetURL("http://spravkaweb.ru/");// Абсолютный URL локального файлаgetURL("file:///f:/www/example.html");// Относительный URL, предполагается протокол httpgetURL("/resource/resource.html");

Чтобы загрузить документ в окно или фрейм, имеющие имя, укажите это имя в качестве аргумента window:

// Загрузить в именованный фреймgetURL("http://spravkaweb.ru/", "myFrame");// Загрузить в именованное окноgetURL("http://spravkaweb.ru/", "myWindow");

Чтобы заменить набор фреймов, в котором содержится текущий фильм, дайте аргументу window заначение "_parent":

getURL("http://spravkaweb.ru/", "_parent");

Чтобы заменить загружаемым документом все наборы фреймов на странице, дайте аргументу window значение "_top":

getURL("http://spravkaweb.ru/", "_top");

Чтобы открыть загружаемый документ в новом анонимном окне браузера, дайте аргументу window значение "_blank":

getURL("http://spravkaweb.ru/", "_blank");

Нужно отметить, что открытие нового окна с помощью "_blank" лишает нас всякого контроля над внешним видом нового окна (размером, конфигурацией панелей управления, местонахождением и т.д.). Чтобы открывать настраиваемые окна с помощью getURL(), нужно вызвать на содержащей фильм странице функцию JavaScript.

С помощью функции getURL() можно также посылать переменные удаленным приложениям или сценариям на сервере. Чтобы передать переменные текущей временной диаграммы во внешний сценарий, нужно указать имя сценария в качестве аргумента URL и задать "GET" или "POST" в качестве значения аргумента method:

getURL("http://spravkaweb.ru/php.php", "_blank", "GET");

При вызове в качестве метода клипа getURL() посылает переменные временной диаграммы этого клипа:

// Передает переменные myClip в example.phpmyClip.getURL("http://spravkaweb.ru/example.php", "_blank", "GET");

Результаты выполнения сценария появятся в окне или фрейме, указанных в аргументе window (который необходимо задавать при передаче переменных).

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

getURL("http://spravkaweb.ru/", "_self", "GET");

Если значением аргумента method является "GET", переменные временной диаграммы текущего клипа посылаются в виде строки запроса, присоединенной к URL сценария в запросе HTTP GET. Строки запросов состоят из пар имя/значение, разделяемых амперандами (&):

getURL("http://www.mysite.ru/example.php?ss=2&pl=34", "_self");

Если аргумент method содержит "POST", переменные временной диаграммы текущего клипа посылаются сценарию в виде отдельного блока данных после заголовка запроса HTTP POST (так же, как в обычной форме HTML, использующей метод POST). Обратите внимание, что "POST" недоступен в автономном Flash Player.

Поскольку для большинства веб-серверов максимальная допустимая длина URL лежит между 255 и 1024 символами, при передаче больших объемов данных используйте "POST", а не "GET".

Надо отметить, что любые данные, возвращаемые сценарием, который вызван getURL(), выводятся как обычное веб-содержание в браузере, а не во Flash. Чтобы получить результаты выполнения сценария во Flash, используйте loadVariables().

Функция getURL() может применяться и с другими протоколами помимо "http:".

Протоколы, поддерживаемые getURL

Как показывает вышеприведенная таблица, если принадлежность Flash импортируется в файл Macromedia Director, с помощью getURL() можно генерировать события Lingo или выполнять команды Lingo. (Lingo - это язык сценариев в Director, аналогичный ActionScript).

Например, можно добавить событие кадра такого вида:

getURL("event: eventName params");

что приведет к вызову в Director обработчика события Lingo с именем on eventName.Вот команда getURL(), генерирующая событие с именем "myEvent" и передающая ему строку "A". Обратите внимание на преобразование символа с помощью:

// Отправить событие в DirectorgetURL("event: myEvent "A"");

Вот обработчик события Lingo sprite, который должен быть прикреплен к спрайту Flash в Director, чтобы получить событие. Заметим, что спрайт в Director примерно соответствует экземпляру клипа во Flash; ключевое слово Lingo put родственно команде ActionScript trace(), а && в Lingo является оператором конкатенации строк:

on myEvent msgput "The message received from Flash was " && msgend

Можно также спровоцировать запуск Lingo из спрайта Flash в Director с помощью ключевого слова "lingo:":

// Пусть Director даст звуковой сигналgetURL("lingo: beep");

Наконец, с помощью getURL() можно выполнять код JavaScript.Вызовем простую функцию alter JavaScript с помощью getURL():

getURL("javascript: alter("Hello world");");

Примеры:

Далее приведен стандартный код кнопки со ссылкой на веб-страницу:

on(release) {getURL("http://www.spravkaweb.ru/");}

Совместимость:

Используется со 2-ей версии Flash. В 4-ой версии усилена добавлением параметра method.

Оглавление книги


Генерация: 0.049. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз