ExternalInterface的简单使用方法
使用ExternalInterface调用JavaScript方法-无返回值
flex代码------------------<mx:Button id="btn" label="Button" click="hello()"/><mx:Script> <![CDATA[ private function hello():void{ ExternalInterface.call("sayHello"); } ]]></mx:Script>JavaScript代码
---------------------function sayHello(){ alert("Hello from JavaScript!");}===================================
使用ExternalInterface调用JavaScript方法-传參数有返回值flex 代码------------------<mx:Button id="btn" label="Button" click="hello()"/><mx:Script> <![CDATA[ private function hello():void{ var msg:String=ExternalInterface.call("sayHello","Hello","from JavaScript!"); Alert.show(msg); } ]]></mx:Script>JavaScript代码
---------------------function sayHello(msg,str){ return msg+"-"+str;}===============================================
JavaScript调用flex 方法flex 代码------------------<mx:Button id="btn" label="Button" click="hello()"/><mx:Script> <![CDATA[ private function hello():void{ ExternalInterface.addCallback("getHello",getHello); } ]]></mx:Script>JavaScript代码
---------------------function sayHello(){ var msg=CheckLayout.getHello(); alert(msg);}<body scroll="no"><input type="button"value="点击我" width="100" οnclick="sayHello()"/> <noscript> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="CheckLayout" width="100%" height="100%" codebase=""> <param name="movie" value="CheckLayout.swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#869ca7" /> <param name="allowScriptAccess" value="sameDomain" /> <embed src="CheckLayout.swf" quality="high" bgcolor="#869ca7" width="100%" height="100%" name="CheckLayout" align="middle" play="true" loop="false" quality="high" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage=""> </embed> </object></noscript></body>