Jump to Navigation

Adobe Flashs ExternalInterface und Microsoft Internet Explorer

Auf meiner neuen Anime Community verwende ich sehr viel Javascript mit Flash. Dafür verwende ich das eigens dafür entwickelte ExternalInterface von Flash. Damit kann ich sehr einfach auf Funktion in Flash direkt per Javascript zugreifen. Die Entwicklung fand mit Firefox statt, wo alle einwandfrei funktioniert. Verwendet man jedoch den Internet Explorer, konnten auf einem keine Funktionen mehr per ExternalInterface registriert werden, was natürlich die gesamte Kommunikation zwischen Flash und Javascript zerstörte.

Nach stundenlangem Testen, fand ich dann 2 Bedingungen, die erfüllt sein müssen, damit ExternalInterface in IE funktioniert.

  1. Der Flash Film muss sichtbar sein. Es in einem verstecktem Div zu laden geht also nicht.
  2. Es muss bereits vor dem onload Event geladen sein. Alle Flash Dateien, die danach geladen werden, können keine Funktionen mehr über ExternalInterface registrieren.

Es gibt außerdem noch ein Problem mit transparenten PNGs im IE 7. Ich hatte häßliche schwarze Hintergründe in einigen Bildern, wobei andere wieder gingen. Der Grund war wieder, dass die Bilder zuerst versteckt waren. Scheinbar kommt IE 7 mit versteckten Elementen überhaupt nicht klar.

One Response to “Adobe Flashs ExternalInterface und Microsoft Internet Explorer”

  1. cybercake:

    It is sad that the incompatibility between browsers, which has last for decades, seems still to last for decades. T_T