Показать сообщение отдельно
Старый 04.09.2009, 16:14
Орец вне форума Посмотреть профиль Отправить личное сообщение для Орец Найти все сообщения от Орец
  № 1  
Ответить с цитированием
Орец

Регистрация: Jan 2008
Сообщений: 38
По умолчанию Работа с файлом XML во Flash, ошибка

Смотрел пример работы с xml и решил повторить.
Пока xml был в коде fla всё работало, но как только попробовал вынести во внешний файл появилась ошибка:
Код:
TypeError: Error #1006: value is not a function.
	at _fla::MainTimeline/_fla::frame1()


Код AS3:
//create the object 
var myXML = new XML();
//ignore white space 
myXML.ignoreWhite = true;
//Так как загрузка XML-файла может занять некоторое время, Flash позволяет нам перезаписывать управляющий элемент события, сообщающий о полной загрузке файла XML. Очень часто для нашего фильма имеет смысл находиться в состоянии ожидания во время загрузки файла. Возможно, что способом, с помощью которого мы реализуем поддержку завершения загрузки, является переход к другому кадру и продолжение воспроизведения фильма. В некоторых случаях в нашем файле XML будут присутствовать какие-либо ошибки, и обработчик будет получать ошибку, с которой нам предстоит иметь дело.
 
myXML.onLoad = function(success) { 
  if (success) {
    gotoAndPlay("someFrame");
  } else {
    trace("failure loading xml file");
  }
};
//Последним шагом расположения файла XML в фильме Flash является его непосредственная загрузка. Мы выполняем этот шаг в последнюю очередь, чтобы обеспечить поддержку файла объектом перед его непосредственным запросом.
//load the file
myXML.load("someFile.xml");
var total2:Number = 0; 
for each (var prop:XML in myXML.item) 
{ 
    total2 += prop.@quantity * prop.price; 
	trace(total2); 
}
Файл someFile.xml, лежит в одном каталоге с приведённым выше файлом.
Код:
    <order> 
        <item id='1' quantity='2'> 
            <menuName>burger</menuName> 
            <price>3.95</price> 
        </item> 
        <item id='2' quantity='2'> 
            <menuName>fries</menuName> 
            <price>1.45</price> 
        </item> 
    </order>
Мне интересно почему это не работает и как должно быть правильно.