ciao a tutti, ho un problema con uno script che carica delle news da un file xml e mi visualizza in un campo di testo, che si trova dentro ad un movieclip, riga per riga con un effetto fadein fadeout usando un setinterval.
Lo stesso script l'ho inserito in diversi frame del mio filmato e carica sempre file diversi.
Il problema è che se faccio partire il filmato e vado direttamente a visualizzare le news "con calma", non succede nulla e funziona tutto normalmente, se invece inizio a muovermi a random nel menù e quindi visualizzando la prima pagina contenente lo script1, poi in quella dello script2 e così via, lo script si impasta, come se ci fosse un carico sulla cpu o vada in palla il setinterval.
come fare?
ringrazio anticipatamentecodice:function loadXML(loaded) { if (loaded) { xmlNode = this.firstChild; caption = []; url = []; total = xmlNode.childNodes.length; for (i=0; i<total; i++) { caption[i] = xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue; url[i] = xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue; } first_item(); } else { content = "file not loaded!"; } } xmlData = new XML(); xmlData.ignoreWhite = true; xmlData.onLoad = loadXML; xmlData.load("news.xml?blarg="+new Date().getTime()); // function first_item() { delay = 3000; p = 0; display(p); p++; } function timer() { myInterval = setInterval(ticker, delay); function ticker() { clearInterval(myInterval); if (p == total) { p = 0; } fadeout(); } } function display(pos) { over = new TextFormat(); over.underline = false; // out = new TextFormat(); out.underline = false; // newsMC.newsText._alpha = 100; newsMC.newsText.text = caption[pos]; //newsMC.onRollOver = function() { //this.newsText.setTextFormat(out); //}; //newsMC.onRollOut = function() { //this.newsText.setTextFormat(out); //}; timer(); } function fadeout() { this.onEnterFrame = function() { if (newsMC.newsText._alpha>=0) { newsMC.newsText._alpha -= 5; } else { display(p); p++; delete this.onEnterFrame; } }; }
ciao!

Rispondi quotando