0
Я пытаюсь позволить ребенку прочитать его родительские вары и наоборот. Родитель не имеет никаких проблем чтения ВАР ребенка, но по какой-то причине ребенок получает только «не определено» в качестве ответа ... (вместо «456»)as3 переменная доступа от родительского swf
Родитель сценарий
var mySwf
var masterVar=456
function startLoad() {
var myLoader:Loader = new Loader();
var mRequest:URLRequest = new URLRequest("test1.swf");
myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);
myLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
myLoader.load(mRequest);
}
function onCompleteHandler(loadEvent:Event) {
mySwf=loadEvent.currentTarget.content
addChild(mySwf);
trace(mySwf.slaveVar)//123
}
function onProgressHandler(mProgress:ProgressEvent) {
}
startLoad()
Child(test1.swf)
сценарий
var slaveVar=123
trace(Object(parent))//[object Loader]
trace(Object(parent.parent))//[object Object]
trace(Object(parent.parent).masterVar)//undefined
trace(Object(this.parent.parent).masterVar)//undefined
parent.parent.parent является нулевым и MovieClip (parent.parent) плюет только ошибка
Я понятия не имею, что случилось ... Я что-то упустил?
к сожалению, я только получаю следующее сообщение об ошибке: «ReferenceError: Error # 1069: Недвижимость masterVar не найден на flash.display.Loader и там не является значением по умолчанию. \t at test1_fla :: MainTimeline/frame1() " Я сделал это неправильно? _? –
Пожалуйста, см. Отредактированный ответ – strah
ах большое спасибо, не знаю, я должен положить его в eventlistener! работает отлично –