Avatar billede camban Nybegynder
23. juni 2006 - 11:45 Der er 1 løsning

Animation med xml tekst

Hej

Jeg har et script jeg har fundet og rettet tidligere som henter random en af teksterne fra en xml ind, fader ud og henter nu og fader ind.
Jeg håber der er en der kan hjælpe med at ændre koden så teksterne i stedet løber som nedad som rulletekst..

Dette er koden der ligger på frame:

System.useCodePage=true;
xml_obj = new XML();
xml_obj.ignoreWhite = true;
xml_obj.load("tekst.xml");
var citater = new Array();
xml_obj.onLoad = function(s) {
    if (s) {
        for (var i = 0; i<this.firstChild.childNodes.length; i++) {
            citater.push(this.firstChild.childNodes[i].firstChild.nodeValue);
        }
        GetCitat();
    } else {
        trace("xml NOT loaded");
    }
};

function GetCitat() {
    //visNæsteCitat();
    textbox_mc.gocodefade();
}

function shuffle(a) {
    var i, r, t, l = a.length;
    for (i=0; i<l; i++) {
        r = Math.floor(Math.random()*l);
        t = a[i];
        a[i] = a[r];
        a[r] = t;
    }
}
var interval = null;
var næste_citat = null;
function visNæsteCitat() {
    if (!næste_citat || næste_citat.length == 0) {
        trace("vægler nye citater og shuffler dem");
        næste_citat = citater.concat();
        shuffle(næste_citat);
    }
    var c = næste_citat.pop();
    trace("næste citat er: "+c);
    textbox_mc.flash_citat1.text = c;
    if (!interval) {
        trace("sætter interval til at køre");
        //interval = setInterval(visNæsteCitat, 10*1000);
        interval = setInterval(GetCitat, 10*1000);
    }
}


Og det her ligger på movieclippet med den dynamiske tesktboks i:

onClipEvent(load) {
var fadetime = 30
var fadestep = 2
var currentfade = 100
var intervalID;
function changetxt() {
    _parent.visNæsteCitat()
}

function gocodefade() {
    //this.txt.text = _parent.ftext.text
    intervalID = setInterval( fadein, fadetime );
}

function fadein() {
    if (currentfade > 1) {
    currentfade -= fadestep;
    } else {
    clearInterval(intervalID);
    changetxt();
    updateAfterEvent()

    intervalID = setInterval( fadeout, fadetime );
    }
}

function fadeout() {
    if (currentfade < 99) {
    currentfade += fadestep;
    } else {
    clearInterval(intervalID);
    }
}


}

onClipEvent(enterFrame) {
    this._alpha = currentfade;
}

jeg går ud fra at jeg kun skal bruge det aller øverste i frame actionen...med for løkken skal ændres men til hvad?
Avatar billede camban Nybegynder
08. august 2006 - 15:37 #1
svare
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester