ExternalInterface.addCallback für as3 funktioniert nicht

Möchte ich nennen, ALS Funktion von JS.

Habe ich den folgenden ActionScript-3-code:

package  {
    import flash.display.*;
    import flash.events.*;
    import flash.system.*;
    import flash.external.ExternalInterface;
    public class Main extends Sprite {
        public function Main() 
        {
            ExternalInterface.addCallback("PlaySound", PlaySound);
        }
        public function PlaySound():void
        {

        }
    }
}

Muss ich anrufen Funktion PlaySound() aus dem JavaScript. Ich versuche es auf die folgende Weise:

function thisMovie(movieName) {
   if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName];
   } else {
        return document[movieName];
   }
}

function m()
{
  var obj=thisMovie("Main");
  obj.PlaySound();
}

Aber obj hat keine Methode PlaySound() (obj nicht null ist).

Was ist falsch?

  • Aber obj hat keine Methode PlaySound() (obj nicht null ist). -> Was bedeutet es? Haben Sie versucht, zu verfolgen, etwas in Ihrem as3 PlaySound-Methode?
  • Es bedeutet, dass JavaScript-Objekt obj hat noch nicht die Methode PlaySound. Aber obj nicht null - so, function thisMovie korrekt ist. Ich habe die Lösung gefunden, siehe nächste Antwort. Danke.
InformationsquelleAutor Sir Hally | 2011-03-17
Schreibe einen Kommentar