Avatar billede madsringblom Nybegynder
27. juli 2004 - 23:59 Der er 4 kommentarer og
1 løsning

en onRelease funktion i et loop ?

hey er stadig i gang med mit galleri og er nu kommet til at mine billeder skal loade i et target når jeg klikker på et thumbnails!

i får lige hvad jeg har indtil nu !!


// altså jeg har lavet en function
loadGallery = function (kat, imgAmount){
    thumbWidth = 50;
    thumbHeight = 32;
    thumbHspace = 5;
    thumbVspace = 5;
    imgNumber = 0;
// denne løkke fordeler thumbnailsne på rækker
    for (var i=0; i<=100; i++) {
        target_y = 60 + i * (thumbHeight + thumbVspace);
// og denne løkke lægger 3 i hver række
        for(var j=1; j<=3; j++) {
            if (imgNumber < imgAmount) {
            target_x = 500 + j * (thumbWidth + thumbHspace)
            imgNumber += 1;
            thumb_btn = this.createEmptyMovieClip("img"+imgNumber,imgNumber).attachMovie("thumbBTN","thumb"+imgNumber+"_btn",11)
            thumb_btn._y = target_y;
            thumb_btn._x = target_x;
            thumb_btn.target_mc.loadMovie("galleri/"+kat+"/tn_img"+imgNumber+".jpg");
// hertil går det fint men så er det jeg gerne ville have en
// funktion som tildeler hver thumb_btn (som egenlig er et mc)
// sit eget billede at loade i imgTarget_mc
// kan måske godt se hvorfor det her går galt men kan ikke
// komme på et alternativ!!!

            thumb_btn.onRelease = function (){
                _root.galleriIndhold_mc.imgTarget_mc.loadMovie("galleri/"+kat+"/img"+imgNumber+".jpg");
            }
            }
        }
    }
}
Avatar billede thulstrup Nybegynder
28. juli 2004 - 00:20 #1
Du skal tildele hver thumb_btn et nummer:

// altså jeg har lavet en function
loadGallery = function (kat, imgAmount) {
    thumbWidth = 50;
    thumbHeight = 32;
    thumbHspace = 5;
    thumbVspace = 5;
    imgNumber = 0;
    // denne løkke fordeler thumbnailsne på rækker
    for (var i = 0; i<=100; i++) {
        target_y = 60+i*(thumbHeight+thumbVspace);
        // og denne løkke lægger 3 i hver række
        for (var j = 1; j<=3; j++) {
            if (imgNumber<imgAmount) {
                target_x = 500+j*(thumbWidth+thumbHspace);
                imgNumber += 1;
                thumb_btn = this.createEmptyMovieClip("img"+imgNumber, imgNumber).attachMovie("thumbBTN", "thumb"+imgNumber+"_btn", 11, {num:imgNumber});
                thumb_btn._y = target_y;
                thumb_btn._x = target_x;
                thumb_btn.target_mc.loadMovie("galleri/"+kat+"/tn_img"+imgNumber+".jpg");
                thumb_btn.onRelease = function() {
                    _root.galleriIndhold_mc.imgTarget_mc.loadMovie("galleri/"+kat+"/img"+this.num+".jpg");
                };
            }
        }
    }
};
Avatar billede madsringblom Nybegynder
28. juli 2004 - 08:26 #2
Sejt det virker !!!
Jeg er nu ikke helt sikker på at jeg forstår det!
altså {num:imgNumber} bliver tildelt thumb_btn instancen som en slags egenskab ik?
og så deklarerer man en funktion som på den instance's "onRelease" loader billede nummer "num" men når num nu er det samme som imgNumber hvorvor kan man så ikke bruge imgNumber som jeg havde gjort ???
Avatar billede madsringblom Nybegynder
28. juli 2004 - 08:27 #3
under alle omstændigheder så smid et svar for det virker helt perfekt :)
Avatar billede thulstrup Nybegynder
28. juli 2004 - 08:52 #4
Du kan ikke benytte imgNumber, for når loopet er løbet igennem vil den jo altid være lige med imgAmount. Du kan jo prøve at placere en trace(imgAmount) i din onRelease og se hvad den outputter.

Det vi gør istedet er at tildele hver knapper vi oprettet værdien af imgNumber på det givne tidspunkt. Og det er så den værdi vi benytter i onRelease.

Håber det gav lidt mening :o)
Avatar billede madsringblom Nybegynder
28. juli 2004 - 11:03 #5
takker mange gange for delt viden!
Jeg synes det her forum er vildt fedt og fuldt at hjælpsomme mennesker
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