Синтаксис:
function functionname ([argument0, argument1,...argumentN]){ statement(s)}function ([argument0, argument1,...argumentN]){ statement(s)}
Аргументы:
Используйте оператор return в теле функции statement(s), чтобы заставить функцию возвратить какое-либо значение.
Вариант использования номер раз: Определяем function с определенными functionname, arguments, и statement(s). Во время вызова имени функции, на самом деле вызывается описание этой функции с нужными параметрами. Разрешен вызов функции до того, как она определена в Action list, то есть функция может быть объявлена после того, как к ней обратились.
Вариант использования номер два: Создаем безыменную функцию и возвращаем ее. Такой вариант используется в выражениях, кроме того, он частично полезен при создании методов в объектах. Вариант 1) В следующем примере создается функция sqr, которая принимает один аргумент (число), возвращая его квадрат. Обратите внимание, что в этом скрипте объявление функции стоит после ее вызова.
y=sqr(3);function sqr(x) { return x*x;}
(Вариант 2) Следующий пример создает объект Окружность (Circle):
function Circle(radius) { this.radius = radius;}
А здесь создается безымянная функция, которая считает площадь круга и присоединяет ее значение, как метод, объекту Окружность (Circle):
Circle.prototype.area = function () { return Math.PI * this.radius * this.radius}
Совместимость:
Используется с 5-ой версии Flash
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 является оператором конкатенации строк: