1

アプリケーション タブ内にロードされたSWFから JS 関数を呼び出そうとしています。キャンバス FBML として、コードは正しく機能していますが、アプリケーション タブの場合は機能していません。

AS3 コード:

protected function button1_clickHandler(event:MouseEvent):void
{
  callFBJS(["insideFlex"])
}

protected function callFBJS(text:Array):void 
{
   var connection:LocalConnection = new LocalConnection();    
   var connectionName:String = loaderInfo.parameters.fb_local_connection;
   if (connectionName) 
   {     
      logLbl.text = "Connection Name: " + connectionName; 
      connection.send(connectionName,"callFBJS","doSomething",text);
      logLbl.text = logLbl.text + "\n" + "Method invoked";
   }
}

JS コード:

<fb:fbjs-bridge/>
<fb:swf swfsrc="<SWF File>" imgsrc="http://www.easyhealth.org.uk/cmsimages/adobe_flash_1470_1470.jpg" height="655" width="760"/>
<script>
  function doSomething(a) 
  {
     console.log(a);
  }
</script>
4

1 に答える 1

1

この問題を解決するのに 1 日を費やしました。FBJS 関数を宣言し、HTML リンクをクリックして呼び出す必要があります。クリックすると、FBJS ブリッジ ベースの呼び出しが機能します。方法や理由はわかりませんが、これで問題は解決しました。

于 2011-01-28T23:18:20.060 に答える