PHP, JavaScript, Ajax, jQuery, ActionScript, Flex, AIR, Facebook App, Linux, Apache, MySQL...

2010年6月24日 星期四

[Flex]Flex 與 Javascript 相互傳值

要在 Flex 中與 JavaScript 相互傳值,可以使用 ExternalInterface 來實現,其提供了 addCallBack 和 call 方法。

Flex 呼叫 JavaScript 函式並傳值給 JavaScript

Flex 程式碼:
//ExternalInterface 函式庫
import flash.external.ExternalInterface;

public function javascriptAlert():void{

    //要執行的 JavaScript 函式名稱
    var javascriptFunction:String = "showAlert";
    //傳給 JavaScript 的值
    var message:String = "Hello JS!";
    
    if(ExternalInterface.available){
  //呼叫 JavaScript 函式,並傳值過去
  ExternalInterface.call(javascriptFunction, message);
    }
}

JavaScript 程式碼:



JavaScript 呼叫 Flex 函式並傳值給 Flex

JavaScript 程式碼:


Flex 程式碼:
import mx.controls.Alert;
//ExternalInterface 函式庫
import flash.external.ExternalInterface;

public function initApp():void{
    if(ExternalInterface.available){
     //設定 JavaScript 的回呼處理函式
        ExternalInterface.addCallback("flex_alertshow", alertshow);
    }       
}

public function alertshow(message:String):void{
    mx.controls.Alert.show(message);
}

0 意見:

張貼留言