Показать сообщение отдельно
Старый 20.10.2005, 13:19
zizos@mail.ru вне форума Посмотреть профиль Отправить личное сообщение для zizos@mail.ru Посетить домашнюю страницу zizos@mail.ru Найти все сообщения от zizos@mail.ru
  № 1  
Ответить с цитированием
zizos@mail.ru

Регистрация: Oct 2005
Сообщений: 6
Question Функции в класах - HELP!

Народ, помогите разобраться с классом.
Есть такая конструкция:
Код:
class fMenu extends MovieClip {
..
	public function fMenu() {
		var XMLcontent = new XML();
		XMLcontent.ignoreWhite = true;
		XMLcontent.onLoad = function ()  {
			trace(XMLcontent.firstChild.firstChild.childNodes[1].attributes.name) //выводит то что нужно
			go(XMLcontent);
			function go(xx:XML) {
				trace(xx); //выводит содержимое xml-файла
			}
		}		
		XMLcontent.load(fXML);
	}
..
}
Все работает, но необходимо вынести функцию go(xx:XML) за пределы function fMenu(). И соответственно пишешь вот так:
Код:
class fMenu extends MovieClip {

..
	public function fMenu() {
		var XMLcontent = new XML();
		XMLcontent.ignoreWhite = true;
		XMLcontent.onLoad = function ()  {
			trace(XMLcontent.firstChild.firstChild.childNodes[1].attributes.name)//выводит то что нужно
			go(XMLcontent);
		}		
		XMLcontent.load(fXML);
	}
	private function go(xx:XML) {
		trace(xx); // ничего не выводит!
		trace(XMLcontent); // на это ругается: There is no property with the name 'XMLcontent'.
	}
..
}
Но ничего в переменную xx не передается.
Разум подсказывает, что нужно что-то где-то объявить... но только где и как?