学习笔记 如何利用Flex调用JavaScript代码

开发 后端
本文向大家介绍一下如何使Flex调用JavaScript代码,在Flex开发中有时候需要调用JS代码,例如关闭浏览器,或者是在某种情况下打开浏览器提示框等等。

本文和大家重点学习一下Flex调用JavaScript代码,在Flex调用JavaScript最简单的方法是使用ExternalInterface(),可以使用此API调用任意JavaScript,传递参数,获得返回值。

Flex调用JavaScript代码

在Flex开发中有时候需要调用JS代码,例如关闭浏览器,或者是在某种情况下打开浏览器提示框等等。一般情况下Flex用ExternalInterface类的call()函数来调用JS代码,其中call()函数的参数就是String类型的JS代码段。

你可以调用Html页面中的JavaScript,通过与JavaScript的交互,可以改变Style,调用远程方法。还可以将数据传递给Html页面,处理后再返回给Flex,完成这样的功能主要有两种方法:ExternalInterface()和navigateToUrl()。

在Flex调用JavaScript最简单的方法是使用ExternalInterface(),可以使用此API调用任意JavaScript,传递参数,获得返回值,如果调用失败,Flex抛出一个异常。ExternalInterface封装了对浏览器支持的检查,可以用available属性来查看。ExternalInterface的使用非常简单,语法如下:

  1. flash.external.ExternalInterface.call(function_name:String[,arg1,...]):Object; 

参数function_name是要调用的JavaScript的函数名,后面的参数是JavaScript需要的参数。

As代码

  1. ExternalInterface.call(FUNCTION_USEREXIT);  
  2. ExternalInterface.addCallback("checkExit",checkExit);  
  3. privatestaticvarFUNCTION_USEREXIT:String="document.insertScript=function()"+"  
  4. {"+"window.onbeforeunload=function()"+"{"+"varflexObj=MarineDataEdit.checkExit();  
  5. "+"if(flexObj!=\"\")"+"{"+"returnflexObj;"+"}else{"+"return;"+"}"+"}"+"}";  
  6. publicfunctioncheckExit():String{varuserExitStr:String="你如果现在离开,则您的所有信息将失效!";  
  7. returnuserExitStr;  
  8.  
  9. ExternalInterface.call(FUNCTION_USEREXIT);  
  10. ExternalInterface.addCallback("checkExit",  
  11. checkExit);privatestaticvarFUNCTION_USEREXIT:String="document.insertScript=function()"+"  
  12. {"+"window.onbeforeunload=function()"+"{"+"varflexObj=MarineDataEdit.checkExit();  
  13. "+"if(flexObj!=\"\")"+"{"+"returnflexObj;"+"}else{"+"return;"+"}"+"}"+"}";  
  14. publicfunctioncheckExit():String{varuserExitStr:String="你如果现在离开,则您的所有信息将失效!";  
  15.  
  16. returnuserExitStr;  

其中ExternalInterface类的addCallback函数是调用AS端的返回值。

【编辑推荐】

  1. Flex与JavaScript交互中如何用Flex调用JavaScript
  2. Flex跨域访问沙箱问题解决方案
  3. 技术前沿 看Flex客户端缓存技术如何使用
  4. 解析Flex全屏模式设置方法
  5. Flex内存泄露解决方法和内存释放优化原则

 

责任编辑:佚名 来源: csdn.net
相关推荐

2010-07-30 12:56:02

Flex调用JavaS

2010-07-27 10:39:25

Flex组件

2010-08-10 16:41:54

FlexJSP

2010-08-04 09:26:27

Flex数据

2010-08-12 11:05:33

Flex数据绑定

2010-07-30 13:52:17

Flex组件

2010-08-10 15:26:38

Flex应用程序

2010-08-11 13:08:36

Flex3

2010-08-09 10:34:05

Flex背景

2010-07-28 15:29:18

Flex函数

2010-08-06 13:22:48

FlexCSS

2010-08-05 15:46:13

Flex行为Flex效果

2010-07-30 09:28:09

Flex数据绑定

2010-08-03 14:52:49

Flex界面设计

2010-08-10 16:30:05

Flex上传文件

2010-07-29 13:18:45

Flex右键菜单

2010-07-30 10:58:03

Flex数据绑定

2010-08-04 11:32:30

Flex字符串

2010-07-28 14:28:57

Flex国际化

2010-08-10 09:40:23

Flex与浏览器交互
点赞
收藏

51CTO技术栈公众号