Det er mange Web - programmering situasjoner som krever opplysninger som skal sendes mellom klient-side Javascripts og innebygd Flash -innhold. Før utgivelsen av Flash 8 , kan programmerere bruke metoder som getURL () og SetVariable ( ) . Imidlertid inneholder utgivelsen av Flash 8 en ny klasse viet spesielt til å kommunisere med funksjoner utenom Flash ( se referanser 1 ) . Bruke ExternalInterface klasse i Flash 8 er nå den mest effektive måten å integrere Flash på en nettside som bruker Javascript . Du trenger
Adobe Flash Professional CS5
tekst editor
Vis flere instruksjoner
en
Sett følgende parameter mellom " objekt " koder i den innebygde koden av HTML-dokumentet : en
p Dette vil sikre at Flash filmen vil få lov til å kommunisere med Javascript mens du tester den lokalt ( se referanser 1 , side 2 ) . Når du publiserer , kan du endre verdien til " sameDomain " for å hindre mistenkelig bruk av SWF -fil av tredjeparts nettsteder.
2
Inkluder ExternalInterface klasse i Actionscript -koden til Flash-fil med følgende kommando : . .
import flash.external * ;
( se referanser 1 , side 5 )
3
Skriv en Javascript -funksjonen i HTML- dokument som tar minst ett argument og returnerer en verdi. Du trenger ikke å skrive noen spesiell Javascript -kode for å kalle denne funksjonen fra Flash 8 .
4
Bruk ExternalInterface.call ( )-metoden i Actionscript din for å ringe til Javascript -funksjonen fra den innebygde Flash movie. Den første parameteren med denne metoden er den Javascript -funksjonen navn som en streng , og du kan følge den med så mange parametere som du ønsker å passere utenfor til funksjonen , alle atskilt med komma . En generell form for denne samtalen er : en
ExternalInterface.call ( functionname , parameter1 , parameter2 , ... )
( se referanser 1 , side 5 )
fem .
Bruk vanlig variabel oppdrag operatør i Actionscript kode for å hente returverdien fra Javascript -funksjonen , akkurat som du ville gjort med hvilken som helst funksjon : en
ReturnedValue = ExternalInterface.call ( functionname , parameter1 , parameter2 , . ..) ;
6
bruk Actionscript er typecasting metoder på ExternalInterface samtale hvis du får problemer med den type verdi Javascript avkastning. Int ( ) og String ( ) er typiske eksempler ( se referanser 2 ) .
7
Bruk addCallback ( )-metoden for ExternalInterface klassen å gjøre metoder i Actionscript tilgjengelige for eksterne Javascripts ( se referanser 1 , side 6 ) . Den addCallback ( )-metoden har følgende generelle form : en
ExternalInterface.addCallback ( ExternalName , Instance , InternalName )
ExternalName er det navn som funksjonen kan kalles fra Javascript , og InternalName er navnet på funksjonen i Actionscript . Den " Forekomst" parameteren brukes til å spesifisere oppløsningen av " denne " søkeord , og er vanligvis satt til " null " .
8
Ring din Actionscript funksjon fra Javascript bruke navnet du har angitt for " ExternalName "i addCallback metode , innledes med en gyldig DOM referanse til Flash movie. For eksempel : en
window.document.flashMovie.flashFunctionName ( parameter1 , parameter2 , ...);
Se Resources for en mer dyptgående diskusjon av gyldige DOM referanser, og være Husk å teste koden i flere nettlesere for å sikre Flash-filmen er referert riktig .