Ich versuche, die Kommunikation zwischen Javascript und Flash über ExternalInterface über Domänen hinweg zu ermöglichen. Das Javascript funktioniert großartig, wenn es sich in derselben Domäne wie die SWF befindet. Aber in einem Fall befindet sich die HTML-Datei auf Domäne A, die Javascript und das Flash-residieren sowohl auf Domain B. Ich habe alle folgenden getan:Cross Domain ExternalInterface "Fehler beim Aufrufen der Methode auf NPObject"
- Die embed-Tag hat
allowScriptAccess="always"
(und das Objekt hat, dass als param) - Meine SWF-Datei actionscipt hat
Security.allowDomain("*")
- Meine SWF ruft auch
Security.allowInsecureDomain("*")
- Beide Domäne A und Domäne B haben eine
/crossdomain.xml
Datei, dieallow-access-from domain="*"
Die SWF ist in der Lage Javascript auf der Seite zu nennen, aber wenn ich Javascript verwenden Funktionen von ExternalInterface ausgesetzt rufen, ich
Error calling method on NPObject! [plugin exception: Error in Actionscript. Use a try/catch block to find error.]
Dies ist Actionscript 2 so ExternalInterface.marshallExceptions
ist nicht verfügbar.
Laden Sie mehr als ein swf? Oder ist ein swf auf Domain A (mit dem HTML) laden Sie Ihre swf auf Domain B? –
Alex - Guter Punkt, das habe ich nicht erwähnt. Das JavaScript aus Domäne B lädt eine SWF aus Domäne B und die SWF lädt eine zweite SWF aus Domäne B. Dieses Laden scheint zu funktionieren, aber ich kann nicht sicher sein, da ich nicht mit der SWF interagieren kann. – Josh