Avatar billede klik Nybegynder
13. april 2003 - 18:37 Der er 12 kommentarer og
1 løsning

alpha

Hej Eksperter
kan følgende lade sig gøre med action script?
jeg vi gerne have et billede til at gå fra 0% til 100% alpha i løbet af fem frames og så fra 100% til 0% i løbet af ti frames, som en sekvens der varer 15 frames, ved mouse over.
på forhånd tak
Avatar billede doodoo Novice
13. april 2003 - 18:38 #1
ja det kan...
Insert > New symbol > Button > lav en knap som du ville lave en alm. flash movie med alpha...
Avatar billede klik Nybegynder
13. april 2003 - 18:41 #2
jeg vil gerne have et action script da jeg har 100 billeder jeg skal gøre det ved
Avatar billede mat Nybegynder
13. april 2003 - 20:54 #3
jeg er ikke helt sikker på hvad du mener, men er det noget i denne stil?

numClips = 5;

function loader() {
    this._alpha = 0;
}

MovieClip.prototype.fader = function() {
if (this.go && this._alpha <= 100) {
this._alpha += 10;
if (this._alpha >= 100) {
this.go = false;
}
}
if (!this.go && this._alpha >= 0) {
this._alpha -= 20;
}
}

for (i = 1; i <= numClips; i++) {
_root["clip"+i].onLoad = loader;
_root["clip"+i].onLoad();
_root["clip"+i].onEnterFrame = function() {
this.fader();
}
_root["clip"+i].onRollOver = function() {
this.go = true;
}
}


?

mvh mat
Avatar billede mat Nybegynder
13. april 2003 - 20:56 #4
..dine clips skal så hedde clip1, clip2 osv osv, og så retter du bare tallet i numClips
Avatar billede klik Nybegynder
13. april 2003 - 21:33 #5
jeg prøver lige, kan du ikke forklare lidt mere om hvad de forskellige ting betyder, så jeg kan ændre stierne og hvor dette script skal ligge. På forhånd tak det ser meget lovende ud, og jeg vil gerne smide nogle flere point på bordet.
Avatar billede mat Nybegynder
13. april 2003 - 21:40 #6
scriptet skal ligge i frame 1 (hvor dine movieclips også skal ligge).

Det det gør er at:

når movieclipsne loades bliver deres alpha sat til 0

Når musen rører ved dem bliver der sat en funktion i gang så de fader frem og væk igen (jeg er ikke sikker på at det var det du mente, men det er hvad det gør lige nu).



Ovenstående er MX-syntaks og scriptet vil ikke virke i flash 5.

Hvis du mener en linie-til-linie forklaring af koden må du lige sige til :)

mvh mat
Avatar billede klik Nybegynder
13. april 2003 - 21:46 #7
ok hvad hvis jeg gerne vil have det til at ligge i et movieclip i root (feks. _root.effekt), det er lidt ærgeligt at det ikke virker i flash 5, er det simpelt at ændre??? . skriver du ikke lige et svar.
Avatar billede mat Nybegynder
13. april 2003 - 21:56 #8
det der er fordelen ved mx-syntaksen i dette script er at vi ikke behøver ligge noget som helst kode på movieclipsne - Det er ikke svært at lave om til flash 5 men så skal du have en lille stump kode på alle dine clips.

"ok hvad hvis jeg gerne vil have det til at ligge i et movieclip i root (feks. _root.effekt), "  - her forstår jeg ikke rigtigt hvad du mener?

Koden påvirker kun movieclips, at den ligger i en frame er ligemeget.

mvh mat
Avatar billede klik Nybegynder
13. april 2003 - 22:06 #9
hvis jeg gerne vil have det til at ligge i et movieclip det til at ligge i et movieclip der ligger i roden, da jeg loader de grafiktunge elementer ind i seperate movieclips for at selve siden loader hurtigere, ændrer det så på koden?, jeg skal bruge det til en slags mosaik effekt, der skal fungere på følgende måde: jeg har et billede jeg har delt op i en masse fragmeter der kun bliver synlige når man fører musen hen over dem.
Avatar billede klik Nybegynder
13. april 2003 - 22:07 #10
ups jeg håber det kan læses
Avatar billede mat Nybegynder
13. april 2003 - 22:11 #11
jojo :)

Jeg har ikke lige testet men umiddelbart tror jeg du kan ligge det i frame 1 af den movie du loader ind, og så nøjes med at ændre en lille smule:


numClips = 5;

function loader() {
    this._alpha = 0;
}

MovieClip.prototype.fader = function() {
if (this.go && this._alpha <= 100) {
this._alpha += 10;
if (this._alpha >= 100) {
this.go = false;
}
}
if (!this.go && this._alpha >= 0) {
this._alpha -= 20;
}
}

for (i = 1; i <= numClips; i++) {
this["clip"+i].onLoad = loader;
this["clip"+i].onLoad();
this["clip"+i].onEnterFrame = function() {
this.fader();
}
this["clip"+i].onRollOver = function() {
this.go = true;
}
}


..det burde virke, og det lyder som om effekten er ok i forhold til det du ønsker :)
Avatar billede klik Nybegynder
13. april 2003 - 22:14 #12
tusind tak for hjælpen du er en guttermand
Avatar billede mat Nybegynder
13. april 2003 - 22:15 #13
tak for det :)
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