Форум 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=121499)

Fox M. Lurde 17.02.2009 11:32

Как в один и тот же кадр грузить разный текст?
 
День добрый!

Возник такой вопрос:
1) есть ряд кнопок с кодом:

Код AS1/AS2:

submenu3.sub4.onRelease=function(){
                  _level0.gotoAndStop(11);
                  _global.xmlFileName=null;
                  _global.xmlFileName="DATA/4/22/1.dat";
                  _level0.submenu3.removeMovieClip();
}

От кнопки к кнопке меняется только значение _global.xmlFileName="DATA/4/22/1.dat";

2) в 11 кадре такой вот код:

Код AS1/AS2:

//Create a new style sheet object
var myCSS = new TextField.StyleSheet();
 
//create a new XML object
var myXML:XML = new XML();
 
//Specify the location of the CSS file that you created earlier
var cssURL = "example.css";
 
//Load CSS and XML file
myCSS.load(cssURL);
myXML.ignoreWhite = true;
 
 
myCSS.onLoad = function(success) {
        if (success) {
                myXML.load(_global.xmlFileName);
                myXML.onLoad = function() {
                        trace("ok");
 
                        myTxt1 = myXML.firstChild.childNodes[0].childNodes[0].nodeValue;
                        myTxt2 = myXML.firstChild.childNodes[1].childNodes[0].nodeValue;
 
                        myText1.styleSheet=myText2.styleSheet = myCSS;
 
                        myText1.text = myTxt1;
                        myText2.text = myTxt2;
                };
        }
        //_global.xmlFileName=null;
};

Итог работы. При нажатии на любую кнопку в первый раз все работает: XML'ка подгружается, как положено. При нажатии на любую кнопку второй раз ничего не происходит. Догадываюсь, что причина в onLoad и определении ряда переменных перед этим. Вопрос в том, как переписать код, что бы он работал?

Заранее гранд се[н]кс!

Добавлено через 7 часов 13 минут
Вопрос решил следующим образом.

1) Все до myXML.load(); поместил в первые кадры основного таймлайна (туда, где у меня идет сплэшзаставка и определение переменных)

2) Код с парсингом (вроде это так называется?), начиная от myXML.load(); повесил на кнопки, перед ним явно определяя _global.xmlFileName="DATA/4/22/1.dat";

Вроде как все работает. Однако вопрос остается открытым: какие еще есть варианты?


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

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