Flex 与 js 相互调用
代码结构:
as中代码:testtab.mxml
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
import flash.external.ExternalInterface;
import mx.controls.Alert;
protected function application1_applicationCompleteHandler(event:FlexEvent):void
{
if (ExternalInterface.available)
{
trace("支持外部接口调用.");
Alert.show(ExternalInterface.call("method_js","parm")); //调用js中方法
ExternalInterface.addCallback("callBackFlex", testJavascript); //js回调方法
}
}
/**
* js回调方法
*/
public function testJavascript():String {
var taStr:String = "js调用flex成功!";
return taStr;
}
]]>
</fx:Script>
js中代码:
<script type="text/javascript">
function method_js(s){
alert("flex->js->success");
return s;
}
function callASApp(){
testtab.callBackFlex();
alert("call->flex");
}
</script>
<button οnclick="callAsApp()">Call App</button>
-------------