zizos@mail.ru
20.10.2005, 13:19
Народ, помогите разобраться с классом.
Есть такая конструкция:
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 не передается.
Разум подсказывает, что нужно что-то где-то объявить... но только где и как?
Есть такая конструкция:
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 не передается.
Разум подсказывает, что нужно что-то где-то объявить... но только где и как?