Avatar billede flash4u Nybegynder
25. april 2003 - 23:50 Der er 17 kommentarer og
1 løsning

Popup der styrer flashfilm

Jeg har et gæstebog i flash, der henter tekst fra en database til dynamisk tekstfelt.

Når der trykkes på et link kommer et popup vindue, hvori man kan skrive en besked til databasen.

Når der trykkes send i popup'en lukkes vinduet og beskeden sendes til databasen.

Men er det samtidig muligt at få det dynamiske tekstfelt til at opdatere "on submit" fra popup'en?

Jeg ved godt det sikkert ikke kan gøres fra popup, men jeg har tidligere brugt det her javascript, når jeg kontrollerer flashfilm fra en anden html frame:

java script:parent.main.forside.GotoFrame(x);
(i frame x unloades så movieclip'et, hvorefter det genloades)

Nogen der har en ide til om det evt kan omskrives, så det virker fra en popup?

(jeg har overvejet nogle alternative løsninger, bla. at lade det dynamiske tekstfelt opdatere sig selv rent tidsbestemt, men ville gerne lave det mere elegant/imponerende)

Så kan det overhovedet lade sig gøre?????
Avatar billede barklund Nybegynder
26. april 2003 - 13:16 #1
java script:window.opener.flashfilm.gotoFrame(x);
Avatar billede flash4u Nybegynder
26. april 2003 - 14:20 #2
popup vinduet skal ikke åbne et nyt vindue, men opdatere den flashfilm, hvorfra popup'en blev åbnet. (dette vindue er således stadig åbent sammen med popup'en) Nu kan jeg ikke lige teste det før senere, men dit script ligner ikke et der virker til dette formål?!
Avatar billede flash4u Nybegynder
26. april 2003 - 14:26 #3
Det skal siges at flashfilmen der skal opdateres ligger i en frame i et html dokument
Avatar billede barklund Nybegynder
26. april 2003 - 14:54 #4
Jo, det gør :)

window.opener en en javascript reference tilbage til det vindue, som åbnede det. Og så er du i topframen i dette vindue, og kan gennem frames finde din flashfilm og give den en GotoFrame eller SetVariable...
Avatar billede flash4u Nybegynder
26. april 2003 - 15:19 #5
dvs "on uload" af popup skal kaldes java script:window.opener.flashfil.gotoFrame(x) hvis nu den frame hvor filmen ligger hedder main og swf'en hedder forside, hvad bliver så den fulde kode (bare for at få det skåret ud i pap)?
(som sagt jeg tester senere, men det er indiskutabelt skønnest, hvis det virker med det samme) *g*
Avatar billede barklund Nybegynder
26. april 2003 - 15:31 #6
Jeg vil tro det bare er:

onUnLoad="java script:window.opener.main.forside.GotoFrame(x);"

/Barklund
Avatar billede nikolajdu Nybegynder
28. april 2003 - 11:18 #7
"window.opener en en javascript reference tilbage til det vindue, som åbnede det." - Dette er ikke helt korrekt.

window.opener er en reference tilbage til præcis den ramme i det vindue der åbnede det. I det her tilfælde findes der rammer i opener vinduet så man skal lige være 200% opmærksom på at stien bliver helt rigtig.

Hvis vinduet blev åbnet i rammen med flashfilmen kan man altså nøjes med at bruge : opener.forside.GotoFrame(x);

onUnLoad er en javascript eventhandler og indholdet vil altid være javascript. Derfor skrives det :

onUnLoad="opener.forside.GotoFrame(x);"
onUnLoad="opener.parent.main.forside.GotoFrame(x);"
onUnLoad="opener.top.parent.main.forside.GotoFrame(x);"

3 stykker hvoraf de alle 3 faktisk burde virke.

/Nikolaj
Avatar billede barklund Nybegynder
28. april 2003 - 11:27 #8
hehe... :)
Avatar billede flash4u Nybegynder
28. april 2003 - 11:38 #9
Nikolaj du har fuldstændig ret. Jeg prøvede jo alt inden jeg fandt ud af at frame angivelsen kunne udelades.

Jeg fik den her til at virke:
onUnload="MM_callJS('window.opener.forside.Play();')"
(Dreamweavers call javascript funktion)

Barklund får point, da du satte mig på sporet og jeg aldrig nåede at læse Nicolajs indlæg.
Avatar billede nikolajdu Nybegynder
28. april 2003 - 11:39 #10
Snøft.... *'*'**
Avatar billede nikolajdu Nybegynder
28. april 2003 - 11:39 #11
Skal vi være rigtigt pernitten, så skal onUnload faktisk også stå med små bogstaver.

onunload...
Avatar billede barklund Nybegynder
28. april 2003 - 11:41 #12
Så lægger jeg et svar... for mine manglende JavaScript kundskaber :)
Avatar billede flash4u Nybegynder
28. april 2003 - 11:43 #13
ovenstående kræver måske en forklaring - jeg fandt nemlig ud af at jeg ikke skulle bruge GotoFrame, men Play istedet.

Da jeg fandt ud af at GotoFrame betyder GotoandStop. Undrede mig på falderebet om ikke der findes en komando, der kan bruges i javascript, der svarer til GotoandPlay?

Men under alle omstændigheder, så slap fik jeg det til at virke med window.opener og ikke blot opener ;o)
Avatar billede flash4u Nybegynder
28. april 2003 - 11:45 #14
Svar accepteret, hvis du lige smider en hurtig kommentar på sidstnævnte...
Avatar billede nikolajdu Nybegynder
28. april 2003 - 11:45 #15
At afspille noget med FScommands er : TPlay("_root",12)
Avatar billede nikolajdu Nybegynder
28. april 2003 - 11:46 #16
Opdagede lige at der findes et ekstra parameter på GotoFrame

så prøv med :

GotoFrame(12,0)
GotoFrame(12,1)

Én af dem burde være "play"....
Avatar billede barklund Nybegynder
28. april 2003 - 11:53 #17
Personligt aner jeg det ikke... lad endelig Nikolaj komme til - han har den fornødne viden :)
Avatar billede flash4u Nybegynder
28. april 2003 - 11:57 #18
jeg kan nu ikke få ovenstående til at virke, men det kan være at jeg i kådhed har lavet nogle fejl...hmm..tjekker...hmmm
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