![]() |
|
||||||||||
|
|||||
|
Регистрация: May 2008
Сообщений: 8
|
Первый опыт работы с XML, посему не пинайте.
Проблема вот в чем, загружаем ХМЛ, разбираем по запчастям в массив. Затем строится своеобразное меню, так вот не могу догнать как же назначить пунктам меню ссылки из массива. Пытаюсь записать ее в переменную при прохождении цикла, а она перезаписывается. В общем проще показать код))) Вот он var myXML:XML = new XML(); myXML.ignoreWhite = true; myXML.load("test.xml"); myXML.onLoad = function(success) { if (success) { createArray(); } else { result_text.text = "Данные небыли загружены"; } }; var list:Array = new Array(); function createArray() { for (n=0; n<myXML.firstChild.childNodes.length; n++) { var image = myXML.firstChild.childNodes[n].firstChild.firstChild.nodeValue; var name = myXML.firstChild.childNodes[n].firstChild.nextSibling.firstChild.nodeValue; list[n]=[[image],[name]]; } createMenuList(); } function createMenuList(){ var spacing:Number = 30; for (var i=0;i<list.length;++i){ var picName:String = list[i][0]; //вот тут определяется искомая переменная. var name1:String = "name_mc"+i+"_mc"; var y:Number = i*spacing; list_mc.attachMovie("name_mc",name1,i); list_mc[name1].temp = picName; list_mc[name1]._y=y; //А вот тут вот начинается самая засада. когда происходит передача переменной в функцию, она почемуто во всех кнопках оказывается одинаковая. list_mc[name1].button_bt.onPress = function() { showPicture(picName); } } } function showPicture (href){ test_txt.text = href; //Соответственно здесь и выводится результат. } |
|
|||||
|
Регистрация: Jun 2009
Сообщений: 16
|
определять переменные надо до цикла
а в цикле - использовать и ещё перед AttachMovie |
|
|||||
|
Регистрация: May 2008
Сообщений: 8
|
хех... не помогает. Все также перезаписывает...
|
|
|||||
|
.
|
А Вы любитель загадок =)
for (n=0; n<myXML.firstChild.childNodes.length; n++) ... for (var i=0;i<list.length; ++i) Последний раз редактировалось dimarik; 09.06.2009 в 01:44. |
|
|||||
|
Регистрация: May 2008
Сообщений: 8
|
А что тут не так? ))) сначала делаю массив из ХМЛ, потом разбираю этот массив...
Результат тот же. Уже всю голову сломал. Последний раз редактировалось Юрис; 09.06.2009 в 10:17. |
|
|||||
|
.
|
list[n]=[[image],[name]];
list[] - массив, элементами которого являются массивы [], в которых по два элемента, представляющих из себя массивы, в которых лежат по одному элементу image и name соостветственно. Вы ничего не перемудрили? |
![]() |
![]() |
Часовой пояс GMT +4, время: 11:57. |
|
|
« Предыдущая тема | Следующая тема » |
|
|