Avatar billede kalleballe Nybegynder
12. juli 2003 - 11:42 Der er 1 kommentar og
1 løsning

generere x antal movie clips med dynamisk indhold fra xml fil

Jeg har lavet følgende kode:

//
//
stop();
// init arrays
PageFile = new Array();
//
//
XMLNode.prototype.sendNodes = function(searchName, callback) {
    for (var i = 0; i<this.childNodes.length; i++) {
        var currentNode = this.childNodes[i];
        if (currentNode.nodeName == searchName) {
            callback(currentNode);
        }
        if (currentNode.childNodes.length>0) {
            currentNode.sendNodes(searchName, callback);
        }
    }
};
//
//
var myDoc = new XML();
var myDocName = "test2.xml";
var print1 = new MovieClip();
myDoc.onLoad = checkStatus;
myDoc.load(myDocName);
//
//
function checkStatus(success) {
    if (success) {
        myDoc.sendNodes("PageFile", handlePageFile);
    } else {
        checkStatus();
    }
    wholeArray();
    // først laver jeg tomme movieclips
    setImageFields();
}
//
//
function handlePageFile(node) {
    trace("PageFile "+node.firstChild);
    PageFile.push(node.firstChild);
    trace("Pagefile length= "+PageFile.length);
}
//
//
function setImageFields() {
    for (var i = 1; i<=(totalSlides); i++) {
        this["print"+i].loadMovie("image"+i+".jpg");
    }
}
//
//
function wholeArray() {
    totalSlides = PageFile.length;
    trace("total SLides = "+totalSlides);
    for (var i = 1; i<=totalSlides; i++) {
        print1.createEmptyMovieClip("print"+(i+1), 1);
    }
}
//
//

Det jeg gerne vil have er:

at jeg først generere det antal movieclips som der er brug for, altså totalSlides (antallet af PageFile i xml filen) med instance navne print1, print2 etc og også link naven print1, print2 etc.

Der efter fylder jeg mine movieclips op med indhold, -

men som det er nu virker det ikke, - det er som om jeg kun får 1 clip fyldt op.

Hvad mon jeg laver forkert??

<PageFile>print1.jpg</PageFile>
<PageFile>print2.jpg</PageFile>
<PageFile>print3.jpg</PageFile>


vh

KalleBalle
Avatar billede kalleballe Nybegynder
12. juli 2003 - 11:44 #1
ups nu kan jeg se at der er fejl i

this["print"+i].loadMovie("image"+i+".jpg");
det skal jo hedde print og ikke image ;-)
Avatar billede kalleballe Nybegynder
12. juli 2003 - 11:45 #2
okay så virker det jo ;-)
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