Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Увидеть флешварс с подгруженной флешки (http://www.flasher.ru/forum/showthread.php?t=136734)

JaLav 24.02.2010 15:43

Увидеть флешварс с подгруженной флешки
 
Здравствуйте. В родительской флешке вижу флешварс
Код:

var fv:Object=this.loaderInfo.parameters;
Из дочерней не вижу
Код:

var fv:Object=root.loaderInfo.parameters;
Можно ли все-таки увидеть флешварс из подгруженных флешек? Если нет, то как правильно их передавать дочерним?

Gaen 24.02.2010 16:07

1. Вгружаете флэшку со стороннего хоста? allowDomain прописали?
2. На момент обращения к root дочерняя флэшка добавлена на сцену?

gloomyBrain 24.02.2010 16:25

root в подгруженной флешке ссылается на экземпляр документ-класса, лежащий на stage подгруженной флешки. Соответственно, передавать flashvars надо из родительской, либо попробовать вот по такой схеме (код в подгружаемой флешке):
Код AS3:

var flashVars:Object = stage.parent.root.loaderInfo.parameters

- stage подгружаемой
- parent дает нам контейнер родительской, в который мы добавили подгружаемую
- root дает нам root родительской
- читаем flashVars =)

И обязательно учтите то, что сказал GAIKER

JaLav 24.02.2010 16:47

Цитата:

1. Вгружаете флэшку со стороннего хоста?
Нет, не со стороннего. С того же.
Цитата:

allowDomain прописали?
нет. А надо если с того же хоста?
Цитата:

2. На момент обращения к root дочерняя флэшка добавлена на сцену?
да
Цитата:

попробовать вот по такой схеме (код в подгружаемой флешке):
Код:

var flashVars:Object = stage.parent.root.loaderInfo.parameters

ок, спасибо. сейчас попробую. Пробовала так:
Код:

var flashVars:Object = this.parent.root.loaderInfo.parameters

mayakwd 24.02.2010 17:16

o_O
parent.loaderInfo.parameters отменили? зачем вы обращаетесь к root?

JaLav 24.02.2010 17:36

Вот так заработало:
Код:

var fv:Object=this.parent.parent.root.loaderInfo.parameters;
parent - это лоадер,
parent.parent - родительская флешка
Дочернюю добавляю таким образом:
Код:

private function loadChildSwfComplete(event:Event):void
{
        var child_swf:Object = event.target.content;
        addChild(child_swf as DisplayObject);
}

но parent все-таки указывает на loader


Часовой пояс GMT +4, время: 22:46.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.