Flex中的AactionScript和JavaScript互调的小例子

    技术2022-05-12  39

    actionscript调用javascript中的方法 FlexConnectJavaScript.mxml <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx=" http://www.adobe.com/2006/mxml" layout="absolute">     <mx:Script>      <![CDATA[      import flash.external.*;      public function invokeJavaScript():void      {        lblResult.text=ExternalInterface.call("returnTheName","huangxi";//第一个是所要调用的方法,第二个为参数,后面要跟其他参数直接写就OK了。      }      ]]>     </mx:Script> <mx:Button id="btnConnect" label="调用JavaScript" click="invokeJavaScript()" x="229" y="204"/> <mx:Label id="lblResult" text="test" x="205" y="99" width="150" height="80"/> </mx:Application> FlexConnectJavaScript.html中<Script>加入 function returnTheName(a) {        return "HUANGXI"; } 小结 1.ExternalInterface.call("returnTheName","huangxi");其中第一个参数与JavaScript中的函数相同,第二个参数为传递参数 再来看JavaScript调用flex中的函数 JavaScriptConnectFlex.mxml <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx=" http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initApp()"> <mx:Script> <![CDATA[ import flash.external.ExternalInterface; public function add():int { var i:int; var sum:int=0; for(i=1;i<=100;i++) {     sum+=i; } return sum; } public function initApp():void { ExternalInterface.addCallback("addTo100",add); //初始化时添加一个js调用的方法声明,第一参数为javascript所调用的方法明,第二个参数为所要执行的actionscript方法。 } ]]> </mx:Script> </mx:Application> JavaScriptConnectFlex.html中加入 <button οnclick="addMethod()">计算</button> ... 中加入         function addMethod() { var s=JavaScriptConnectFlex.addTo100();                  alert(s); } /// 小结 1.ExternalInterface.addCallback("addTo100",add);定义JavaScript可以调用的方法 2.可见JavaScript要调用Flex函数,Flex要声明一下;而Flex调用JavaScript函数则不需要  

    最新回复(0)