Я пишу встроенную функцию в AS3 как обработчик событий для класса Loader, у меня проблема в том, что в этой встроенной функции ей необходим доступ к переменным вне области действия функции.
Вот код, который я запускаю:
for(var i:uint=0;i<numChildren;i++){;
var displayObj:DisplayObject = getChildAt(i);
var displayObjWidth = displayObj.width;
if (elementname == displayObj.name)
{
var loader:Loader = new Loader();
var urlRequest:URLRequest = new URLRequest(loadURL);
loader.load( urlRequest );
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, function(e:Event){
var mw:Number = displayObj.width;
var mh:Number = displayObj.height;
var tempImage:Bitmap = new Bitmap(e.target.content.bitmapData);
image.bitmapData = tempImage.bitmapData;
image.width = mw;
image.height = mh;
loader.width = displayObj.width;
loader.height = displayObj.height;});
loader.x = displayObj.x;
loader.y = displayObj.y;
addChild( loader );
removeChild( displayObj );
}
Эта функция загружает изображение из URL, затем находит соответствующий дочерний элемент и заменяет существующее изображение новым загруженным.
У меня проблема в том, что я могу получить доступ к высоте и ширине исходного экранного объекта, который я заменяю новым, загруженным через класс Loader.
Как я могу получить доступ к этим переменным вне области функции или передать их в функцию?