Справочник по Flash : ActionScript : Basic Actions : fscommand - Передача данных браузеру
смотрим также
Материал из Справочник Web-языков
fscommand
(Глобальная функция)
Позволяет отправить данные программе, которая запустила данный клип
Синтаксис:
fscommand(command, arguments)
Аргументы:
- command
- Строка, передаваемая приложению-хозяину, часто имя функции JavaScript;
- arguments
- Строка, передаваемая приложению-хозяину, часто аргумент для функции, указанной в command.
Описание:
С помощью функции fscommand(), фильм Flash может связываться с автономным проигрывателем или приложением-хозяином проигрывателя: средой, в которой выполняется Flash Player (веб-браузером или Macromedia Director).
Функция fscommand() обычно используется одним из трех способов:
- Для отправки одной из немногочисленных встроенных команд автономному проигрывателю Flash
- Для отправки команд языку сценариев веб-браузера, например, JavaScript или VBScript
- Для связи с Lingo в фильме Macromedia Director
При использовании с автономным плеером fscommand() принимает одну из встроенных пар команда/аргумент, как показано в следующей таблице:
Пары команда/аргумент в автономном проигрывателе
Команда | Аргумент | Описание |
"allowscale" | "true" или "false" | В случае "false" предотвращает увеличение или сжатие содержимого фильма в зависимости от размера окна проигрывателя. "allowscale" часто используют в сочетании с "fullscreen", чтобы создать Projector, занимающий весь экран при сохранении исходного размера фильма. |
"exec" | "application_name" | Запускает внешнее приложение. Путь к приложению задается в строке application_name. Путь разрешается относительно фильма Flash, если только application_name не задано как абсолютный тип, например: "C:/WINDOWS/NOTEPAD.EXE". Обратите внимание, что в пути используется прямая косая черта (/), а не обратная (). |
"fullscreen" | "true" или "false" | В случае "true" включает максимизацию окна проигрывателя, которое занимает весь экран пользователя. |
"quit" | "н/а" | Закрывает фильм и выходит из проектора Flash (автономный проигрыватель). |
"showmenu" | "true" или "false" | В случае "false" подавляет вывод управляющих элементов в контекстном меню проигрывателя, оставляя только опцию About Macromedia Flash Player. |
"trapallkeys" | "true" или "false" | В случае "true" все нажатия клавиш - даже клавиш сокращенного набора - посылаются фильму Flash. trapallkeys используется для отключения управляющих клавиш в автономном проигрывателе (например, Ctrl-F для полноэкранного режима, Ctrl-Q для завершения работы, Esc для режима Stop/exit Full Screen mode и т.д.) |
При использовании в браузере функция fscommand() в фильме влечет вызов специальной функции JavaScript (Netscape) или VBScript (Internet Explorer) на странице, содержащей фильм. Имя этой специальной функции имеет общий вид movieID_DoFSCommand, где movieID является именем, указанным в атрибуте фильма OBJECT ID (Internet Explorer) или атрибутом EMBED NAME (Netscape) в содержащем фильм документе HTML. При вызове movieID_DoFSCommand() значения параметров fscommand() command и arguments передаются в качестве аргументов функции movieID_DoFSCommand(). Если на содержащей фильм странице не существует функции movieID_DoFSCommand(), происходит отказ функции fscommand() без каких-либо сообщений.
Обратите внимание, что для работы fscommand() с Netscape атрибут swLiveConnect тега фильма EMBED должен быть задан как "true":
<EMBED NAME="testmoviequot; SRC="myMovie.swf" WIDTH="100%" HEIGHT="100%" swLiveConnect="true" PLUGINSPAGE="https://www.macromedia.com/go/flashplayer/"> </EMBED>
Связь с браузером через fscommand() невозможна в следующих конфигурациях системы:
- Internet Explorer под Macintosh OS
- Любой браузер на Macintosh серии 68К
- Любой браузер под Windows 3.1
- Netscape 6
Стоит отметить, что fscommand() не всегда дает лучший способ связи с фильмом Director из Flash. Предпочтительным средством коммуникации с Director является функция getURL() с протоколом event: или lingo:.
Примеры:
По нажатию кнопки подавляется меню flash.
on (release) { fscommand("showmenu","false"); }
Чтобы выйти из автономного проектора, используйте такой код:
fscommand("quit");
Чтобы создать автономный проектор, выполняемый в полноэкранном режиме:
fscommand("fullscreen", "true");
Чтобы создать автономный проектор, выполняемый в полноэкранном режиме, но сохраняющий размер исходного фильма:
fscommand("fullscreen", "true"); fscommand("allowscale", "false");
Для запуска Notepad на большинстве систем Windows можно использовать:
fscommand("exec", "C:/WINDOWS/NOTEPAD.EXE");
В следующем коде показана страница HTML с командами JavaScript и VBScript, необходимыми для ответа на простой вызов fscommand() в фильме. Обратите внимание, что функция VBScript просто вызывает функцию JavaScript - это позволяет работать как в Internet Explorer, так и в Netscape с помощью одной функции JavaScript:
<HTML> <HEAD> <TITLE>fscommand demo</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-- function testmovie_DoFSCommand(command, args) { alert("Здесь данные из Flash: "+command+", "+args); } //--> </SCRIPT> <SCRIPT LANGUAGE="VBScript"> <!-- Sub testmovieFSCommand(ByVal command, ByVal args) call testmovie_DoFSCommand(command, args) end sub //--> </SCRIPT> </HEAD> <BODY> <OBJECT ID="testmovie" CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="100%" HEIGHT="100%" CODEBASE="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab"> <PARAM NAME="MOVIE" VALUE="flash-to-javascript.swf"> <EMBED NAME="testmovie" SRC="flash-to-javascript.swf" WIDTH="100%" HEIGHT="100%" swLiveConnect="true" PLUGINSPACE="https://www.macromedia.com/go/flashplayer/" </EMBED> </OBJECT> </BODY> </HTML>
Чтобы вызвать предшествующую функцию JavaScript testmovie_DoFSCommand() из фильма flash-to-javascript.swf, можно использовать:
fscommand("hello", "world");
Совместимость:
Используется с 4-ой версии Flash