Переменные flashvars


Переменные flashvars. FlashVars предоставляет возможность передавать ваши параметры в SWF из HTML. Это может пригодиться для передачи простых данных в SWF, когда данные меняются в зависимости от того, где располагается приложение. Например, требуется передать в SWF URL веб-сервисов, и эти URL меняются в зависимости от того, на каком сервере располагается SWF. Это позволяет повторно размещать SWF с новыми значениями без необходимости повторной компиляции SWF. Решение, основанное на FlashVars, состоит из двух частей: одна часть реализуется в HTML, а вторая - в ActionScript.

Что такое переменные flashvars

Броузеры, помимо проигрывания флэш роликов, могут передавать некоторые данные в проигрыватель Flash Player. Для передачи переменных на верхний уровень SF W ролика используется свойство плеера FlashVars.
Все браузеры поддерживают размеры сток до 64Кб. Для описания переменных FlashVars используются теги OBJECT и EMBED. Это обеспечивает корректную работу тега во всех браузерах.

Например

<PARAM NAME=FlashVars VALUE="fooBar=Hello Flash User&">
<EMBED FlashVars="fooBar=Hello Flash User"> </EMBED>

Пример позволяет передать SWF ролику переменную "URL" со значением "http://www.sitename.ru" в _level0, тип данных при этом всегда строковый (его можно потом конвертировать в другие типы, данных, но в начале переменная всегда строковая).

Чтобы передать множество значений через FlashVars переменные нужно разделять амперсантом (символ &) впрочем когда загружаете из флэша текстовый фаил, точно также разделяют переменные для их загрузки.

пример

<PARAM NAME=FlashVars value=”URL=http://www.sitename.ru&amp;program=flash&amp;language=en-us”>

Передавать переменные напрямую методом GET, можно например так:

http://www.site.ru/flash.swf?item1=1&item2=2

Во Flash (AS2) получить доступ к flashvarsможно просто используя запись вида _root.myflashvar, как переменную в _root.

Во Flex принцип похожий, но доступ осуществляется немного иначе, ведь в иерархии объектов GUI отсутствует _root как таковоЙ.
Во Flex Singleton-класс Application предоставляет доступ к переднным через GET или через FlashVars переменным через параметр parameters

Если используем Application:

Application.application.parameters.имя переменной

Если не используем Application, и у нас Action Script Project, тогда используем LoaderInfo:

LoaderInfo(this.root.loaderInfo).parameters.имя переменной

Пример кода:

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="initVars()">
<mx:Script>
<![CDATA[

public var myName:String;
public var myPass:String;
private function initVars():void {
myName = Application.application.parameters.myName;
myPass = Application.application.parameters.myPass;
}

]]>
</mx:Script>

<mx:VBox>
<mx:HBox>
<mx:Label text="Name: "/>
<mx:Label text="{myName}" fontWeight="bold"/>
</mx:HBox>
<mx:HBox>
<mx:Label text="Pass: "/>
<mx:Label text="{myPass}" fontWeight="bold"/>
</mx:HBox>
</mx:VBox>
</mx:Application>

Параметр FlashVars - это мощное средство Flash Player. Однако важно правильно его применять. FlashVars не является универсальным механизмом передачи данных в SWF. Он разработан только для работы с простыми данными, которые могут меняться в зависимости от того, где размещается SWF. Для загрузки во время выполнения более сложных настроечных данных надо работать с объектом URLLoader.

Реклама
Поделиться
Качественные премиум темы и шаблоны для Вашего сайта:

Смотреть полный каталог качественных тем и шаблонов

Здесь Вы можете выбрать из более чем 46 000 готовых дизайнов. Шаблоны сайтов + установка + хостинг + персонализация + поисковая оптимизация + копирайтинг — все эти услуги вы всегда можете получить от профессионалов мирового уровня!

11 комментариев

  1. Anzor26/08/2011
    • Николай26/08/2011
  2. Anzor26/08/2011
    • Николай26/08/2011
  3. Anzor25/08/2011
    • Николай26/08/2011
  4. dacascas31/05/2010
  5. Бaбoчкa24/04/2010
  6. чимчим23/04/2010
  7. MessFredieddy19/03/2010

Добавить коментарий

девять − 6 =