Flex呼び出しJSコード


Flex開発では、JSコードを呼び出す必要がある場合があります.例えば、ブラウザを閉じたり、ブラウザのプロンプトボックスを開いたりします.一般的にFlexは、External Interface類のcall()関数でJSコードを呼び出します.ここでcall()関数のパラメータは、SteringタイプのJSコードセグメントです.
      HtmlページのJavaScriptを呼び出すことができます.JavaScriptとの対話によって、Styleを変更して、リモートメソッドを呼び出すことができます.Htmlページにデータを送ることもできます.処理後にFlexに戻ります.このような機能を果たすには主に2つの方法があります.External Interface()とnavigateToUrl().FlexでJavaScriptを呼び出す最も簡単な方法は、External Interface()を使用して、このAPIを使用して任意のJavaScriptを呼び出すことができ、パラメータを伝達し、リターン値を得ることができます.もし呼び出しが失敗したら、Flexは例外を投げます.External Interfaceはブラウザサポートのチェックをパッケージ化しています.available属性で確認できます.External Interfaceの使用はとても簡単です.文法は以下の通りです.
 
   flash.external.External Interface.call(functional:String[,arg 1,…]):Object;
   パラメータfunction_nameはJavaScriptの関数名を呼び出します.後のパラメータはJavaScriptに必要なパラメータです.
 
   ExternalInterface.call(FUNCTION_USEREXIT); ExternalInterface.addCallback("checkExit", checkExit); private static var FUNCTION_USEREXIT:String="document.insertScript = function () " + "{ " + "window.onbeforeunload = function() " + "{ " + "var flexObj = MarineDataEdit.checkExit(); " + "if(flexObj != \"\") " + "{ " + "return flexObj; " + "}else{ " + "return; " + "} " + "} " + "} "; public function checkExit():String { var userExitStr:String="       ,          !"; return userExitStr; 
 
   ただし、External InterfaceクラスのaddCallback関数は、AS端を呼び出す返却値である.