06. februar 2006 - 15:28Der er
4 kommentarer og 1 løsning
Bladre billeder funktion
Hey alle:-)
Jeg er ved at lave en side hvor brugeren kan bladre mellem billeder. Der er 23 knapper hvor brugeren kan klikke på et bestemt billede og så er der 2 pile hvor brugeren kan bladre fem og tilbage mellem billederne.
jeg har 2 knapper der skal bladre frem og tilbage. De har følgende script;
on (release) { tilbage(); }
on (release) { frem(); }
Derudover jeg har denne kode;
currentSwf=-1; maxSwf=23; function frem() { trace("frem"); if (currentSwf<maxSwf) { currentSwf++; } else { //hvis den skal loope tilbage til den første når der ikke er flere currentSwf = 0; } loadMovie("billeder/decoration/DK2500/image"+currentSwf+".swf", container); } function tilbage() { trace("tilbage"); if (currentSwf>0) { currentSwf--; } else { //hvis den skal loope tilbage til den første når der ikke er flere currentSwf = maxSwf; } loadMovie("billeder/decoration/DK2500/image"+currentSwf+".swf", container); }
Mine billeder hedder fra "image0" - "image22".
Bladre funktionen er lidt underlig. Hvis jeg trykker på billede 5 og derefter vil bladre frem eller tilbage fra billede 5 springer den rundt i billederne. oven i det når billede "image0" er loadet ind i containeren og jeg vil bladre frem så kommer samme billede. Disse fejl skal udbedres.
Problemet opstår fordi det næste billede som der skal bladres til bliver regnet ud via variablen currentSwf.
Så når du fx. bladre to billeder frem vil currentSwf indholde 1, det der så sker er at når du klikker på et nr. bliver currentSwf ikke ændret til det pågældende nr. og derfor næste gang du vælger at bladre starter den der hvor den var, så i dine nr. knapper skal du lige ha' sat den til at sætte currentSwf til knappens nr -1 (så vidt jeg lige kan se) og så burde det sådan set virke
Da jeg ikke har filen kan jeg selvfølgelig ikke teste, men vil tro din kode på tal knapperne er noget lign.
on (release) { loadMovie("billeder/decoration/DK2500/image5.swf", _root.container); }
den skal så nok ændres til noget lign:
on (release) { _root.currentMovie=4; loadMovie("billeder/decoration/DK2500/image5.swf", _root.container); }
ovenstående ville så være koden for knap 5,
Ellers må du lige smide koden til tal knapperne hvis det ikke ser sådan ud, alternativt hvis du slet ikke kan få det til at virke kan du smide .fla filen op eller sende den på mail [at] martin - nielsen.com (erstat [at] med @ og fjern mellemrum. så kigger jeg gerne på den :)
Så fik jeg lige kigget lidt på det: Her er løsningen:
i indretningerSide.mc frame 2 har jeg ændret:
maxSwf=23; til maxSwf=22; idet du starter med image0
knapperne har jeg ændret så de ser sådan her ud (altså 1 2 3 osv)
knap 1: on (release) { currentSwf=0; loadMovie("image0.swf", container); gotoAndStop(2); } Knap 2: on (release) { currentSwf=1; loadMovie("image1.swf", container); gotoAndStop(2); }
osv osv,
Ligeledes omdøbte jeg dit image23.swf til image22.swf igen fordi du starter med 0
Synes godt om
Ny brugerNybegynder
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.