Загрузка картинок из XML
Решил создать галерею с разной тематикой. Чтоб выводить изображения из 2-х независимых друг от друга XML-файлов в строго определенные координаты. То есть не как у обычной галереи - жмешь на маленькое фото - появляется большое на весь экран. А так, что на экране появлялись большие фото из разных тематических XML рядом друг с другом. Увы. Ничего из этого не получилось. Полноценно функционирует только последняя часть скрипта, та, в которой прописан второй XML-файл. В тестовом режиме никаких ошибок flash не выдает. Подскажите, в чем здесь ошибка, уже второй день парюсь.
Код AS3:
var xmlLoader:URLLoader = new URLLoader(new URLRequest ("xml.xml"));
var xmlData:XML;
var xmlList:XMLList;
var foto:Loader;
xmlLoader.addEventListener (Event.COMPLETE, getXML);
function getXML(e:Event):void
{
xmlData = XML(e.target.data);
xmlList = xmlData.children();
for(var i:int=0;i<xmlList.length();i++)
{
var foto:Loader = new Loader;
foto.load (new URLRequest(xmlList[i].attributes()[1]));
foto.x=120*i+40;
foto.y=70;
foto.name=xmlList[i].attributes()[0]
addChild(foto);
foto.addEventListener(MouseEvent.CLICK, showPic);
}
function showPic (e:MouseEvent):void
{
var foto:Loader = new Loader;
foto.load (new URLRequest(e.target.name));
foto.x=400;
foto.y=280;
addChild(foto);
}
}
var xml1Loader:URLLoader = new URLLoader(new URLRequest ("xml1.xml"));
var xml1Data:XML;
var xml1List:XMLList;
var foto1:Loader;
xml1Loader.addEventListener (Event.COMPLETE, getXML);
function getXML1(e:Event):void
{
xml1Data = XML(e.target.data);
xml1List = xml1Data.children();
for(var i:int=0;i<xml1List.length();i++)
{
var foto1:Loader = new Loader;
foto1.load (new URLRequest(xml1List[i].attributes()[1]));
foto1.x=100;
foto1.y=200*i+70;
foto1.name=xml1List[i].attributes()[0]
addChild(foto1);
foto1.addEventListener(MouseEvent.CLICK, showPic1);
}
function showPic1 (e:MouseEvent):void
{
var foto1:Loader = new Loader;
foto1.load (new URLRequest(e.target.name));
foto1.x=250;
foto1.y=250;
addChild(foto1);
}
}
|