`

Flex程序与包装页面(wrapper)通信方法小结

    博客分类:
  • FLEX
阅读更多
Flex通常作为一个web项目的一部分嵌入到一个web页中,因此Flex程序和web页面的通信就变得非常重要。
1)  Flex提供了多种方法实现Flex程序和封装页面的交互,主要有:flashVars属性,查询字符串参数,navigateToURL()方法,以及flash.external.ExternalInterface类。
2)    Flex程序 获取环境信息:Application.application.url获取封装页面的URL,以及使用@ContextRoot();以及可以通国 flash.system.Capacities获取到有关系统的一些信息,比如版本、语言、操作系统等;
3)    flashVars用来从外部封装页面向Flex程序传送数据:
         在封装页面传入参数值:AC_FL_RunContent(flashVars, “para1=value1&…&paran=valuen”)或者
<Object>
    <param name=”movie” value=”wrapper.swf? para1=value1 />
    <embed src=”wrapper.swf?para1=value1/>
                  </Object>
                 然后flex程序里通过 Application.application.parameters.para1获取参数值;
4)    ExternalInterface提供方法使Flex程序和外部的封装页面可以相互调用对方的方法,外部接口类要受到域安全性设置(allowScriptAccess, allowNetworking)的约束。
先判断ExternalInterface是否可用:
ExternalInterface.available;
flex调用js:
ExternalInterface.call(funName, funPara1, …, funParaN);
js调用flex:
首先flex里面用ExternalInterface.addCallback(“jsFunName”,asFun),将AS里面定义的函数赋予一个js里面调用的函数的名字jsFunName;
然后在js里面用mySwf.jsFunName()调用flex里面提供的函数asFun;
ExternalInterface安全性:
一般来说js和flex的访问局限于同一个域之内。
可以设置<Object>和<Embed>的allowScriptAccess=”value”(value取值:never, always, sameDomain默认)来设置flex访问js的权限。
至于js对于flex方法的访问只有flex里面通过addCallback的js才可以访问,对于跨域,可以试用allowDomain()函数设置。
5)    navigateToURL() 可以用来打开一个新的浏览器窗口,也可以用来flex和js之间的通信。比如:
         打开一个新窗口:
var url:URLRequest = new URLRequest(http://blog.csdn.net);
navigateToURL(url, _blank);
这个函数也可以用来执行js,例如:
var url:URLRequest = new URLRequest(“javascript:window.close()”); 或者:
var urlLURLRequest = new URLRequest(“javascript:myFun(para1…paran)”)
myFun()函数是html页面的script部分定义的,函数参数一定要有引号!
navigateToURL(url, _self);
也可以用来发送email:
var urlURLRequest = new URLRequest(mailto:zoushun@hotmail.com);
navigateToURL(url, _blank);

原文:http://blog.csdn.net/arshoon/archive/2008/06/11/2533982.aspx
分享到:
评论

相关推荐

    用Wrapper将java程序注册为服务

    本文将详细讲解如何使用Wrapper工具来实现这一目标,Wrapper是一款流行的Java应用程序封装工具,它能将Java应用程序包装成一个独立的可执行文件,并允许将其注册为操作系统服务。 首先,我们需要了解Wrapper的基本...

    wrapper 安装程序

    Wrapper安装程序是一种技术,用于将Java应用程序包装成可作为服务运行的形式。这使得Java应用可以在系统启动时自动启动,并在后台持续运行,就像其他系统服务一样。Wrapper的主要目的是解决Java应用程序不能直接作为...

    让程序作为服务运行(wrapper)

    标题中的“让程序作为服务运行(wrapper)”指的是将Java应用程序封装为Windows服务,以便在系统启动时自动运行,或者独立于用户会话管理。这通常通过一个名为“Wrapper”的工具实现,它是一个代理程序,能够把Java...

    用Wrapper做java后台服务器程序

    Wrapper,全称Java Service Wrapper,是一种开源工具,能够帮助开发者轻松地将Java应用程序包装成Windows或Unix/Linux平台上的系统服务。这种方法不仅简化了Java服务的部署和管理,还提供了更稳定的运行环境和更好的...

    git-wrapper, 命令行 实用程序周围的一个PHP包装器.zip

    git-wrapper, 命令行 实用程序周围的一个PHP包装器 在GIT周围的PHP封装程序 Git包装器提供了的可以读 API,它抽象了从PHP进程中执行Git命令的挑战。平台构建在 SymfonyProcess 之上,使用跨平台支持执行Git命令,并...

    Java Service Wrapper使用总结

    Java Service Wrapper 是一种可以将 Java 应用程序发布为可安装的服务的解决方案,它提供了一种简单的方式来将 Java 应用程序打包成一个独立的服务。下面是 Java Service Wrapper 使用总结的详细说明: 概述 Java ...

    windows程序设计(珍藏版)_wrapper_wrapper

    windows程序设计(珍藏版)_wrapper_wrapperwindows程序设计(珍藏版)_wrapper_wrapperwindows程序设计(珍藏版)_wrapper_wrapper

    st_asio_wrapper一组boost.asio包装类(1.7版)

    增加了自定义数据模式的支持,可用于st_asio_wrapper server与其它客户端的通信、或者st_asio_wrapper client与其它服务端的通信;当然,两端都是st_asio_wrapper的话,就用透明传输即可(1.0版已经支持了)。 1.2版...

    自己做的一个wrapper(java配置windows服务)程序

    标题中的“自己做的一个wrapper(java配置windows服务)程序”指的是创建了一个Java程序,该程序作为一个包装器(Wrapper),用于在Windows操作系统上配置和管理Java应用程序作为系统服务运行。这种技术通常用于确保...

    Java Service Wrapper 将你的java应用程序安装成windows系统服务

    Java Service Wrapper是一个强大的工具,它允许开发者将Java应用程序轻松地包装为Windows系统服务,以便在操作系统启动时自动启动Java程序,并能实现与系统服务相同的管理功能,如自动重启、日志记录等。这个工具...

    wrapper-win-3.5.32

    本文将深入探讨这个主题,包括Wrapper工具的使用、其工作原理以及如何将其与Java应用程序结合。 "Wrapper",在这一上下文中,通常指的是第三方的服务包装器,如Tanuki Software的Java Service Wrapper。它是一个...

    wrapper工具包制作windows服务

    在IT领域,尤其是在系统管理和自动化部署的场景下,将应用程序包装成Windows服务是常见的操作,以便后台自动运行和管理。"Wrapper工具包制作Windows服务"指的是利用特定的工具,如Java的Tanuki Wrapper,将应用封装...

    wrapper配置

    Wrapper工具,通常指的是Tanuki Software的Java Service Wrapper,它是一个轻量级的系统服务接口,能够将Java应用程序包装成Windows服务或Linux守护进程,使得Java程序能够像其他系统服务一样运行、启动和管理。...

    wrapper-windows-x86-32-3.5.20.zip

    《Java包装类Wrapper在Windows环境下的应用与实践》 在Java开发中,有时我们需要将Java应用程序作为服务在操作系统后台运行,特别是在Windows系统中,我们希望Java程序能够在开机时自动启动,这时就需要用到...

    Wrapper做成服务

    Wrapper(包装器)在这里起到了桥梁的作用,它允许我们将原本不支持服务化或者不易集成的组件转化为符合服务化标准的形式。这种方式常用于企业级应用集成、微服务架构或者旧系统现代化改造等场景。 首先,我们来...

    st_asio_wrapper一组boost.asio包装类(1.1版)

    增加了自定义数据模式的支持,可用于st_asio_wrapper server与其它客户端的通信、或者st_asio_wrapper client与其它服务端的通信;当然,两端都是st_asio_wrapper的话,就用透明传输即可(1.0版已经支持了)。

    vue-web-component-wrapper:将Vue组件包装为Web组件自定义元素

    @ vue / web-component-wrapper 包装并将Vue组件注册为自定义元素。兼容性。 不支持IE11及以下版本。 如果定位本机支持ES2015但不支持本机Web组件的浏览器:... 这是捆绑程序的默认导出,可以在带有&lt;script type="mo

    windows wrapper

    Windows Wrapper是一种技术,主要用于在Windows操作系统中以服务的形式运行Java应用程序。这允许Java程序在系统启动时自动启动,并且可以在后台持续运行,就像其他系统服务一样。这种技术对于那些需要在用户登录之前...

    Java Service Wrapper x86-32-3.5.9

    2. `wrapper.dll`:这是与`wrapper.exe`一起工作的动态链接库,实现与Java应用程序的交互。 3. `wrapper.conf.example`:示例配置文件,供开发者参考和修改。 4. `docs`目录:包含了Wrapper的用户手册和API文档。 5....

    wrapper-linux-x86-64-3.5.55 社区版

    Wrapper技术的核心是Java Wrapper工具,它是一个用于非Java程序与Java虚拟机(JVM)交互的桥梁。这个社区版的Wrapper提供了基础的Java应用管理和监控功能,包括自动重启、日志记录、资源限制等。对于开发者和运维...

Global site tag (gtag.js) - Google Analytics