Avatar billede lingoman Nybegynder
29. september 2001 - 22:56 Der er 12 kommentarer og
3 løsninger

Keyword \"this\"

Hej Eksperter !

Er der nogen som kan forklare mig hvornår det er nødvendigt at bruge actionScript keyword \"this\" ? 

fks.

this.myVar refererer til variablen myVar i den aktuelle MC\'s timeline

Man kan jo også nøjes med

myVar dersom actionen jo allerede hører til MC\'en.

Det virker derfor overflødigt med \"this\" i alle de tilfælde som jeg kan komme i tanke om...

Håber at der er nogen som vil afklare dette for mig:)

mvh geo
Avatar billede ditlev Juniormester
29. september 2001 - 23:11 #1
Hej Geo,

Jeg har brugt \"this\" en del gange på en hjemmeside, jeg er igang med at lave pt.
I denne har jeg 39 movieclips, der alle skal have de samme actionscripts, og jeg bruger her \"this\" for at genbruge scriptet, så jeg ikke behøver at skrive navnet på hvert movieclip hver gang.
Jeg bruger det således for at lette programmeringen.

Actionen ser således ud:
this[\"mc\" + _root.aktuelleopg + _root.avar]._y=59;

Uden \"this\" foran virker skidtet ikke!

/Ditlev
Avatar billede wilweb Nybegynder
29. september 2001 - 23:18 #2
kommandoen this bruges når koden i et movie clip referer til sig selv

onClipevent(EnterFrame) {
this._x--;
}

her bruges this til at referer til et movie clip hvor koden er.
Håber du fik det svar du ønskede.
Avatar billede nikolajdu Nybegynder
30. september 2001 - 04:14 #3
Har forsøgt at score lidt pædagoisk assistance i javaScript kategorien. ;-)
Avatar billede roenving Novice
30. september 2001 - 04:25 #4
this vil altid henvise til det *aktive* objekt, men hvis der er den mindste tvivl, ja, så er jeg også i tvivl.

Brug this, når du kalder fra *inden i* et object -- adresser det ellers med den i øvrigt korrekte syntaks.

hth
jes
Avatar billede nikolajdu Nybegynder
30. september 2001 - 04:37 #5
Da det som de andre skriver refererer til objektet selv er det ofte brugt i funktioner.

function kukuk (hvilket_clip) {
    hviket_clip._x=100;
}


Og så et kald fra et af dine 234 dublikerede movieClips.

onClipEvent (load) {
    kukuk(this);
}

Det vil så flytte det aktuelle clip til pos x:100 - Ok med clipevent(load) vil det rykke alle der dublikeres, men du forstår nok.

/Nikolaj
Avatar billede roenving Novice
30. september 2001 - 04:41 #6
Men brug *kun* this i en function hvis det er en constructor (altså at funktionen opretter et objekt), eller bruger du this i kaldet, og så en anden parameter/variabel i funktionen.

jes
Avatar billede nikolajdu Nybegynder
30. september 2001 - 04:53 #7
Kig på:

http://www.nikolajdu.dk/xpert/115180/this.html

Her er masser af dublikerede clips og brug af this.

http://www.nikolajdu.dk/xpert/115180/this.fla

Ekspemplet er en hurtigt modificeret version af et andet projekt jeg er i gang med.
Avatar billede roenving Novice
30. september 2001 - 04:58 #8
Ja, men så har du også et defineret objekt, et <param>-tag henviser jo præcis til et aktivt objekt, og så kan jeg ikke forestille mig nogen problemer -- men els så ?·|
Avatar billede nikolajdu Nybegynder
30. september 2001 - 05:04 #9
nej nej.

this.swf i <object> og <param> er kun filnavnet er på ingen måder dynamisk.

Kode eksemplet med this ligger inde i den .fla jeg linker til, hvor det samme clip først bliver kopieret i 40 eks. og får hvert sit tal/navn. Ved onmousover eller click bliver der så registreret hvilket clip det er med this.

Denne version er ikke den mest dynamiske, men giver en udemærket idé om hvordan og hvorfor nman bruger det.

/Nikolaj
Avatar billede lingoman Nybegynder
30. september 2001 - 08:22 #10
Tak for alle jeres svar! Det er ved at gå op for mig at \"this\" bruges som en slags variabel reference til objektet, og jeg ser nu nogle af de mange nye muligheder der opstår :)

Jeg har øget point indsatsen så der er nok til alle, men jeg mangler stadig et svarfelt fra nikolaj. Prøver lige at acceptere de andre nu.

mvh geo
Avatar billede lingoman Nybegynder
30. september 2001 - 08:27 #11
Nå! det kunne man vist ikke... den fordeler selv pointsne blandt de accepterede og ignorerer indtastede fordelinger... opretter lige et nyt spørgsmål til dig Nikolaj :)

Tak for hjælpen :)
Avatar billede pixelpaw Nybegynder
30. september 2001 - 12:14 #12
\"this\" er efter min mening overflødigt
Avatar billede roenving Novice
30. september 2001 - 12:18 #13
Takker for points ;~}

>>pixelpaw
\'this\' er en enormt fleksibel (og eentydig) måde at genbruge kode mellem en hel masse objekter, så den vil jeg gerne anbefale
Avatar billede pixelpaw Nybegynder
30. september 2001 - 12:22 #14
dildDingo = this._x;

er det samme som

dildDingo = _x

this er overflødigt
Avatar billede roenving Novice
30. september 2001 - 12:24 #15
Ja, så længe man ikke har funktioner
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