Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Проблемы с масивом (http://www.flasher.ru/forum/showthread.php?t=71565)

intro 09.11.2005 14:00

Массив то оно заполняет....ну именно в функции... а вне ф-ции не выводит...пишет андифинет. Такое ощущение что сначало выполняется вывод массива, а потом только ф-ция...

unlexx 09.11.2005 14:08

_global.xml_array = new Array();
var my_xml:XML = new XML();
my_xml.ignoreWhite = true;
my_xml.load("http://localhost/xml2.php");
my_xml.onLoad = function() {
k=1;
for (j=1; j<3; j++) {
for (i=1; i<3; i++) {
_global.xml_array[k] = {id:my_xml.childNodes[0].childNodes[j].childNodes[i].childNodes[0].nodeValue};
k++;
}
}
};
for (i=1; i<10; i++) {
trace(_global.xml_array[i].id);
}

смотри выше поправленное

7thsky™ 09.11.2005 14:15

ох... во флэше загрузка асинхронная, загрузку ждать надо, для этого onLoad и существует

intro 09.11.2005 14:18

Неа... Не работает...

iNils 09.11.2005 14:35

дай свой xml который грузиться

unlexx 09.11.2005 14:40

точно :) надо дождаться загрузки :)

intro 09.11.2005 14:41

Вот XML который получается:
<?xml version="1.0" encoding="windows-1251" ?>
- <d>
- <data1>
<x>2</x>
<y>0</y>
<z>1</z>
</data1>
- <data2>
<x>1</x>
<y>2</y>
<z>3</z>
</data2>
- <data3>
<x>2</x>
<y>0</y>
<z>0</z>
</data3>
</d>

7thsky™ 09.11.2005 14:42

Цитата:

Сообщение от iNils
дай свой xml который грузиться

да все у него нормально грузиться, он просто не может понять
что вот для этого кода (который он пишет вне onLoad в том же кадре)

Код:

for (i=1; i<10; i++) {
trace(_global.xml_array[i].id);
}

массив _global.xml_array пустой так как xml еще не загрузился

intro 09.11.2005 14:43

Вот и я так думаю. Т.к. андифинет выводит раньше, чем заполняется массив.
Так как же всё таки дождаться загрузки ф-ции, а уж потом выводить массив на экран?

unlexx 09.11.2005 14:43

и с такой структурой ты делаешь доп массив?
ладно, делай setInterval или onEnterFrame
и проверяй переменную значение которой меняй по окончании заполнения массива


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

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