| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) | ||
| Neuer User Registriert seit: Jul 2009
Beiträge: 6
| Datenübergabe JS -> Flash beim Laden einer Seite
Ich habe einen Flash-Audioplayer gebaut, der sich mittels ExternalInterface auch über HTML-Links steuern lässt. Funktioniert auch alles an sich, nur eine Sache ist "unzuverlässig" und daher noch keine dauerhafte Lösung. Beim starten der Seite sollen direkt Werte an Flash übergeben werden. Das passiert über eine JavaScript-Funktion, die dann eben per ExternalInterface.addCallback eine Initialisierungs-Funktion im Actionscript auslöst. Diese "Startfunktion" hatte ich erst einfach mittels onload im HTML-Body gestartet: Code: <body onload="startfunktion()"> Beim googlen nach alternativen Lösungen gibt es viele Treffer mit diversen Ideen, offenbar haben viele ähnliche Probleme. Ich habe auch einige probiert, aber entweder sie funktionierten gar nicht (also noch nicht mal eine alert-Ausgabe zu Testzwecken), oder zumindest klappte die Übergabe nach Flash gar nicht mehr. Oder es war genauso wie beim normalen onload. Hat jemand schonmal ähnliche Probleme gehabt und Ideen? Es geht ja offenbar darum, dass die Übergabe zum richtigen zeitpunkt passiert, und da die Javascript-Enginges der Browser unterschiedlich arbeiten, ist das wohl je nach Browser auch mal unterschiedlich. "Onload" wartet ja, bis alle Elemente der Seite geladen sind, was oft zu spät ist, und wohl auch mein problem ist. Aber bei manch anderer Lösung (z.B. per jquery-documentready) funktinierte es gar nicht mehr - passiert da dann die Übergabe zu spät, weil das SWF noch gar nicht geladen ist? Ich habe das SFW übrigens per SWFObject eingefügt, also in der JS-Datei steht Zitat:
Zitat:
| ||
| | |
| | #2 (permalink) |
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
|
was für eine Initialisierungs-Funktion? wieso übergibst du die benötigten Daten nicht per flashvars? 2. könntest du JS per ExternalInterface anweisen, jetzt zu initialisieren. theoretisch sollte Flash dann in jedem Browser soweit sein. |
| | |
| | #3 (permalink) | ||
| Neuer User Registriert seit: Jul 2009
Beiträge: 6
| Zitat:
PHP-Code: Für die Flashvars müsste ich dann mehrere SWFObjects.embedSWF auflisten. Naja, wäre auch nicht unbedingt aufwändiger. Zitat:
Danke für die schnelle Antwort! | ||
| | |
| | #4 (permalink) |
| Flash-Designer Registriert seit: May 2006 Ort: Wiesbaden
Beiträge: 6.164
| Kleine Anmerkung hierzu: PHP-Code: PHP-Code:
__________________ Viele Grüße // Martin Martin Kraft // Interaktionsdesign Hilfreiche Websites: // Hilfe zur Adobe Flash Plattform // ActionScript 2 Referenz // ActionScript 3 Referenz // ActionScript 3 Arbeitshandbuch // weitere Flash Ressourcen Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da! |
| | |
| | #5 (permalink) |
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
|
um mal bei flashvars zu bleiben: du könntest auf jeder Seite unterschiedliche Flashvars einbinden; in einem internen Script-Block(also keine externe JS-Datei). statisch, oder auch per PHP HTML-Code: <script type="text/javascript"> var flashvars = { pagename: "seite1", tracklist: "track1|track2|track3" }; </script> HTML-Code: <script type="text/javascript"> var tracks = ["track1", "track2", "track3"]; var pagename = "seite1"; </script> Code: //und in deinem jetzigen Script:
var flashvars = {
pagename: pagename,
tracklist: tracks.join("|")
};
swfObject... oder du übergibst nur den Namen und lädst die Tracklist aus einer XML-Datei (erscheint mir irgendwie korrekter, ka) |
| | |
| | #7 (permalink) |
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
|
@yaet und ich kann dir voraussagen, dass das bei mir ins leere führen wird. weil die swf uu. noch nicht bereit ist, und falls sie doch bereit wäre: ich nutz FlashBlock => erst nach nem Klick wird die SWF überhaupt geladen. und ich glaub nicht dass ich da der einzige bin, bei dem das so wäre. es ist in jedem fall sinvoller, das Flash sich die Daten holt, wenn es soweit ist. ob aus den flashvars, oder indem es den init per externalinterface selbst auslöst ist hierbei egal. Geändert von thomas_E (15-08-2011 um 22:33 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| beim laden einer seite variable an flash übergeben | Karli98 | ActionScript 1 | 10 | 02-05-2007 09:36 |
| Script für laden einer swf datei, beim Starten der fla seite????? | Domsi | Flash MX 2004 | 2 | 05-10-2004 17:26 |
| beim laden einer seite mit swf direkt zu frame springen? | Master Luke | HTML und CSS | 2 | 20-02-2003 14:47 |
| Flackern beim Laden einer Flash-Seite | goiter-sepp | Flash 4 und Flash 5 | 2 | 13-08-2001 10:13 |
| Probleme beim Laden einer Flash-Seite im Internet-Explorer | Peter | Flash 4 und Flash 5 | 3 | 04-07-2001 19:29 |