Flex与JavaScript如何进行交互,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
在学习Flex的过程中你可能会遇到Flex与JavaScript交互的问题,这里和大家分享一下,主要包括Flex调用JavaScript中的函数和JavaScript调用Flex中的函数两大部分内容。
Flex与JavaScript交互
Flex 与JavaScript 交互,主要依靠Flex的ExternalInterface,其提供了addCallBack和call方法。
◆先来看Flex调用JavaScript中的函数
FlexConnectJavaScript.mxml
<?xmlversionxmlversion="1.0"encoding="utf-8"?> <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Script> <![CDATA[ importflash.external.*; publicfunctioninvokeJavaScript():void { lblResult.text=ExternalInterface.call("returnTheName","huangxi"; } ]]> </mx:Script> <mx:Buttonidmx:Buttonid="btnConnect"label="调用JavaScript"click="invokeJavaScript()"x="229"y="204"/> <mx:Labelidmx:Labelid="lblResult"text="test"x="205"y="99"width="150"height="80"/> </mx:Application> FlexConnectJavaScript.html中<Script>加入 functionreturnTheName(a) { return"HUANGXI"; } ////////////////////////
小结
1.ExternalInterface.call("returnTheName","huangxi");其中***个参数与JavaScript中的函数相同,第二个参数为传递参数。
◆再来看JavaScript调用Flex中的函数
JavaScriptConnectFlex.mxml
<?xmlversionxmlversion="1.0"encoding="utf-8"?> <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"creationComplete="initApp()"> <mx:Script> <![CDATA[ importflash.external.ExternalInterface; publicfunctionadd():int { vari:int; varsum:int=0; for(i=1;i<=100;i++) { sum+=i; } returnsum; } publicfunctioninitApp():void { ExternalInterface.addCallback("addTo100",add); } ]]> </mx:Script> </mx:Application> JavaScriptConnectFlex.html中加入 <buttononclickbuttononclick="addMethod()">计算</button> ... 中加入 functionaddMethod() { vars=JavaScriptConnectFlex.addTo100(); alert(s); } ///////////////
1.ExternalInterface.addCallback("addTo100",add);定义JavaScript可以调用的方法
2.可见JavaScript要调用Flex函数,Flex要声明一下;而Flex调用JavaScript函数则不需要
看完上述内容,你们掌握Flex与JavaScript如何进行交互的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。