Flex应用中利用ExternalInterface API取得JavaScript返回值的例子
2009-11-11 11:52
495 查看
在前面的Flex中利用ExternalInterface的API调用JavaScript函数的例子中,我们了解到了Flex应用中
下面是具体的例子以及源代码:
Download: main.mxml
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/03/11/returning-values-from-javascript-in-your-flex-applications-using-the-externalinterface-api/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:Script>
<![CDATA[
import mx.utils.ObjectUtil;
private function callJavaScript():void {
var keys:Array = "appCodeName,appName,appVersion,cookieEnabled,language,platform,systemLanguage,userAgent,userLanguage".split(",");
var arr:Array = ExternalInterface.call("getNavigatorObject", keys);
dataGrid.dataProvider = arr;
}
]]>
</mx:Script>
<mx:ApplicationControlBar dock="true">
<mx:Button label="Get browser navigator object"
click="callJavaScript();" />
</mx:ApplicationControlBar>
<mx:DataGrid id="dataGrid"
variableRowHeight="true"
width="100%"
height="100%" >
<mx:columns>
<mx:DataGridColumn dataField="key"
width="120" />
<mx:DataGridColumn dataField="value"
wordWrap="true" />
</mx:columns>
</mx:DataGrid>
</mx:Application>
下面是JavaScript文件(/src/externalInterface.js):
Download: externalInterface.js
// JavaScript
/** http://blog.flexexamples.com/2008/03/11/returning-values-from-javascript-in-your-flex-applications-using-the-externalinterface-api/ */
function getNavigatorObject(keys) {
var arr = [];
var i;
var len = keys.length;
var key;
var value;
for (i=0; i<len; i++) {
key = keys[i];
value = navigator[key];
arr.push({key:key, value:value});
}
return arr;
}
下面是HTML文件中需要添加的内容(/html-template/index.template.html):
Download: index.template.html
<head>
...
<script language="JavaScript" src="externalInterface.js"></script>
</head>
调用JavaScript函数。
接下来的例子展示了Flex应用中如何调用JavaScript函数并且使用返回值。
下面是具体的例子以及源代码:
Download: main.mxml
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/03/11/returning-values-from-javascript-in-your-flex-applications-using-the-externalinterface-api/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:Script>
<![CDATA[
import mx.utils.ObjectUtil;
private function callJavaScript():void {
var keys:Array = "appCodeName,appName,appVersion,cookieEnabled,language,platform,systemLanguage,userAgent,userLanguage".split(",");
var arr:Array = ExternalInterface.call("getNavigatorObject", keys);
dataGrid.dataProvider = arr;
}
]]>
</mx:Script>
<mx:ApplicationControlBar dock="true">
<mx:Button label="Get browser navigator object"
click="callJavaScript();" />
</mx:ApplicationControlBar>
<mx:DataGrid id="dataGrid"
variableRowHeight="true"
width="100%"
height="100%" >
<mx:columns>
<mx:DataGridColumn dataField="key"
width="120" />
<mx:DataGridColumn dataField="value"
wordWrap="true" />
</mx:columns>
</mx:DataGrid>
</mx:Application>
下面是JavaScript文件(/src/externalInterface.js):
Download: externalInterface.js
// JavaScript
/** http://blog.flexexamples.com/2008/03/11/returning-values-from-javascript-in-your-flex-applications-using-the-externalinterface-api/ */
function getNavigatorObject(keys) {
var arr = [];
var i;
var len = keys.length;
var key;
var value;
for (i=0; i<len; i++) {
key = keys[i];
value = navigator[key];
arr.push({key:key, value:value});
}
return arr;
}
下面是HTML文件中需要添加的内容(/html-template/index.template.html):
Download: index.template.html
<head>
...
<script language="JavaScript" src="externalInterface.js"></script>
</head>
相关文章推荐
- Flex中利用ExternalInterface API从JavaScript中获取内容并在Flex应用中使用的例子
- 利用ToolTipManager类检测并取得Flex应用中当前ToolTip状态/内容的例子
- android 开发利用 html5 JavascriptInterface 实现应用层与 native 互传参数并获取返回数据
- Flex中如何利用mx:states和mx:State创建不同状态应用的例子
- Flex应用中利用Embed metadata(redux)的systemFont属性嵌入字体(font)的例子
- Flex中如何利用firstVisibleItem属性设置或取得第一个显示节点的例子
- Flex中利用ExternalInterface的API调用JavaScript函数的例子
- Flex中利用ExternalInterface API从HTML模板(HTML templates)中调用ActionScript函数的例子
- Flex应用中如何利用source属性嵌入字体的例子
- frameset应用例子——利用javascript跳转
- Flex中如何利用mx:states和mx:State创建不同状态应用的例子
- 利用Yahoo Maps API做的一款不错的RIA应用(Flex开发)
- 使用ArcGIS GP服务遇到的问题,原因以及解决方法 - 客户端API开发(Javascript/Flex/Silverlig 转载
- javascript与jQuery设置取得div绝对位置一个小应用(像日历控件一样,在编辑框下面显示一个层)
- ADF vs. ArcGIS Server Javascript/Flex/Silverlight API
- javascript利用控件对windows的操作实现原理与应用
- Javascript返回多个值的应用
- Javascript基础_07基础应用:求线性函数值、求奇数偶数和、求水仙花数、利用辗转相除法求最大公约数和最小公倍数、求某一年的日期为第几天
- ArcGIS API for Javascript 应用开发入门
- 利用 Lotus Connections API 制作桌面应用