AS3 ExternalInterface.nennen, warum es nicht funktioniert auf Chrome oder IE?
import flash.external.ExternalInterface;
var pageURL:String = ExternalInterface.call('window.location.href.toString');
Der obige code scheint zu funktionieren auf Firefox, aber wenn ich versuche es mit Chrome oder IE funktioniert es nicht (es verursacht einen Fehler und Stoppt die swf-Ausführung).
Irgendeinen Hinweis?
Ich arbeitete auf Sie. Zumindest dann, wenn eine Antwort gegeben wurde... War es der Grund für meinen ban aus zu Fragen, SO?
Ich weiß nicht - ich habe noch nie jemanden gesehen der gebannt werden. Am besten Fragen Sie einen moderator.
coz von Ihrem Ruf Punkte, dachte ich, u kann die gewähren, das zu tun 😉 Sorry...
Warum meine Frage wurde downvoted?
Ich weiß nicht - ich habe noch nie jemanden gesehen der gebannt werden. Am besten Fragen Sie einen moderator.
coz von Ihrem Ruf Punkte, dachte ich, u kann die gewähren, das zu tun 😉 Sorry...
Warum meine Frage wurde downvoted?
InformationsquelleAutor kante | 2012-09-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
ExternalInterface
funktioniert in aktuellen Versionen aller wichtigen Browser. Das erste, was Sie tun sollten, ist zu wickeln, rufen Sie einen Scheck, um zu sehen, ob es derzeit verfügbar:Das problem mit Chrome und IE kann das Aufruf-Fenster.Lage.href. Ihre beste Wette ist, um dieses in eine JS-Funktion, und rufen Sie dann diese Funktion aus ALS, etwa so:
Stellen Sie außerdem sicher, dass die Funktion, die Sie versuchen zu nennen, bereits im DOM, bevor Sie versuchen, es zu nennen - wenn Sie fügen Sie Ihre SWF-bevor Sie das Skript hinzufügen, und tätigen Sie den Anruf zu
ExternalInterface
sofort, dann wird es scheitern, weilreportHref
noch nicht vorhanden.Und, schließlich, es ist möglich, dass ein Anruf von innerhalb der SWF zu den
window.location
Objekt Fehler auftreten, die durch sandboxing, was nicht der Fall sein, wenn Sie den Aufruf von JS-funciton in die Seite.Den docs auf
ExternalInterface
sind ziemlich umfassend, mit guten Beispielen:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/external/ExternalInterface.html
Welche Fehler sind Sie immer? Haben Sie bei der Installation der flash debugger, der Spieler für Chrome und IE? (adobe.com/support/flashplayer/downloads.html), sollten Sie irgendeine Art von Fehler, wenn es nicht funktioniert. Auch, siehe das Beispiel hier: help.adobe.com/en_US/as3/dev/... - möglicherweise müssen Sie durch die Kontrollen durch, um festzustellen, wenn JS und bereit sind, für einander, wie in diesem Artikel beschrieben, um herauszufinden, was das Problem ist.
Auch, sowohl in JS und WIE könnten Sie wickeln Ihre Anrufe in
try{} catch{}
blocks und zeichnen Sie den Fehler, um herauszufinden, was Sie falsch gemacht haben.In firefox läuft alles einwandfrei. Ich muss herausfinden, wie man den debug flash mit chrome und verstehen, was die blockierende Fehler...
Installieren Sie den debugger von flash player von dieser url. Und auch F12 und überprüfen Sie die Konsole. Zwischen denjenigen, die Sie sollten in der Lage sein, um entweder die AS oder JS Fehler.
InformationsquelleAutor Jude Fisher
Funktioniert nicht im IE9
funktioniert überall
InformationsquelleAutor Warlock