Не передается имя через event.target.name

То что касается флеша, но не касается ВКонтакте API. Например проблемы при создании прыгающего мячика.
Ответить
wierusna
Сообщения: 137
Зарегистрирован: 13 ноя 2011, 18:40

Не передается имя через event.target.name

Сообщение wierusna »

Сам код

Код: Выделить всё

некий_объект_на_сцене.addEventListener(MouseEvent.CLICK, loadXML)function loadXML(event:MouseEvent):void {    var XMLdata:XML = new XML();    var XMLLoader:URLLoader = new URLLoader();    XMLdata.ignoreWhite=true;     XMLLoader.load(new URLRequest("файл.xml"));    XMLLoader.addEventListener(Event.COMPLETE, xmlLoaded)    function xmlLoaded(e:Event):void {        XMLdata = new XML(e.target.data);        trace(XMLdata.event.target.name.length());
Когда пишу так, выводит 0 (хотя в XMLке их 3)

Код: Выделить всё

trace(XMLdata.event.target.name.length());
Когда пишу так, выводит 3 (то есть все правильно)

Код: Выделить всё

trace(XMLdata.flappsItem.length());


Строение XMLки

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?><items><flappsItem url="1.png" x="-38" y="127"></flappsItem><flappsItem url="1.png" x="-38" y="127"></flappsItem><flappsItem url="1.png" x="-38" y="127"></flappsItem></items>
Мне нужно передавать название КЛИКНУТОГО итема динамически через event.target.name (в объекте на сцене есть еще объекты у которых уникальные имена, их то мне и нужно передавать) Что не правильно? Помогите!
Emeltil
Сообщения: 298
Зарегистрирован: 26 мар 2011, 15:29

Re: Не передается имя через event.target.name! ПОМОГИТЕ!

Сообщение Emeltil »

вместо target попробуй currentTarget или как-то так
Alazaur
Разработчик
Разработчик
Сообщения: 1001
Зарегистрирован: 16 окт 2011, 20:25

Re: Не передается имя через event.target.name! ПОМОГИТЕ!

Сообщение Alazaur »

trace(XMLdata.event.target.name.length());
Исходя из этого у вас XML должен быть вида:

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?><body>    <event>        <target>            <name></name>            <name></name>            <name></name>        </target>    </event></body>
Он у вас точно такой?
Подозраваю что вам нужно что-то типа

Код: Выделить всё

trace(XMLdata[event.target.name].length());илиtrace(XMLdata[event.currentTarget.name].length());
wierusna
Сообщения: 137
Зарегистрирован: 13 ноя 2011, 18:40

Re: Не передается имя через event.target.name! ПОМОГИТЕ!

Сообщение wierusna »

Alazaur
Правильно подозревали) Спасибо огромное! Не знал, что нужно выделять скобами по бокам. После 3х дней мучений, точно уж запомню навсегда))
Ответить