总结Flex与浏览器交互
在用flex做Web应用时为了扩展应用程序功能,势必会更多的同浏览器进行交互,这样就会用到下面介绍的知识
1、在Flex中实现URL 跳转(使用flash.net.navigateToURL()方法如:)
/*
* param1: 要跳转的URL
* param2: 跳转方式 _blank /_self
*/
navigateToURL(new URLRequest("http://blog.csdn.net/xingjunli"),"_blank");
2、使用FlashVars传替换参数(使用Application.application.parameters属性)
页面嵌入SWF文件代码(我们可以通过JS动态来设置FlashVars信息已达到数据交互的目的)
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%" id="mySwf">
<param name="movie" value="main.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#869ca7" />
<param name="allowScriptAccess" value="sameDomain" />
<param name="FlashVars" value="UserName=Andy_liu&Age=18&Address=HongKong" />
</object>
Flex中获取参数代码:
private function onFlashVars(e:MouseEvent):void //获取页面参数
{
var parameters:Object = Application.application.parameters;
labURL.text = Application.application.url.toString(); // http://localhost:8889/main.swf
var param1:String = parameters.UserName; // Andy_liu
var param2:int = parseInt(parameters.Age); // 18
var param3:String = parameters.Address; // HongKong
/*
txtParam1.text = param1;
txtParam2.text = String(param2);
相关文档:
1.什么是函数,函数的两种定义方式
2.参数,传值和传址,默认参数、参数访问信息和变长参数
3.函数的变量(全局和局部)
4.代理函数对象和函数执行队列
5.返回函数类型和闭包
6.apply的应用(方法劫持,继承属性)
下载地址:as3_4函数 ......
Flex4和Flex3的区别在这里就不多说了,有兴趣可以上网找资料。
本次的实践将通过测试用例来说明Flex4中不同Theme的应用效果
在Flash Builder4中出现了两个命名空间
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo"
相应的,控件也出现了两种不同的风格,创建Theme.mx ......
Flex 与 JavaScript 交互,主要依靠Flex的ExternalInterface,其提供了addCallBack和call方法.
下面的例子将演示Flex调用javascript,和javascript调用Flex。
js 代码
-------------------------------------------------------------------------------------------------------------
function hello(param) {
......
用FLEX如何取浏览器地址栏中的域名信息?我查找到两种方法:
第一种方法是用ExternalInterface.call('window.location.href.toString'),它的值就是地址栏中的域名
有以下几点需要注意:
1.当Flash和加载它的网页不同域时,需要在网页在 PARAM 或 EMBED 标签中进行设置AllowScriptAccess 为“always”
关于 ......
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12" creationComplete="init()">
<mx:Script>
<!--[CDATA[
import mx.utils.*;
import flash.net.*;
......