- 浏览: 191292 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
natian306:
x286129277 写道能否把您的这两个源文件给出来呢?im ...
1分钟去掉你的 FusionCharts 试用版标识 -
x286129277:
能否把您的这两个源文件给出来呢?
import com.flx ...
1分钟去掉你的 FusionCharts 试用版标识 -
x286129277:
楼主,可以把您以下两个类文件的源码给出来么?
1分钟去掉你的 FusionCharts 试用版标识 -
谁念谁:
厉害,牛气!!!
1分钟去掉你的 FusionCharts 试用版标识 -
wangfeiqi:
还是没有去掉哦,怎么办啊
1分钟去掉你的 FusionCharts 试用版标识
RIA开发中有一个很重要的问题,那就是对搜索引擎不友善,因为对搜索引擎来说,Rich Internet Application通常是一页HTML。
换个角度说,在传统的基于页面流的方式我们可以通过http://imzw.iteye.com/blogs/165173导航到一个页面。但RIA的方式通常不行,也就是我们通常无法通过一个链接导航到程序的一个操作界面。Ajax,Flash等RIA技术都面临着这个问题。Ajax可通过JavaScript调用浏览器相关的对象实现。Flash相对要困难些。Flex中已经内建了DeepLink来解决这个问题。
DeepLink是通过锚点,即http://imzw.iteye.com/blogs/165173#view=0;showDetails=true这样一个链接导航到Flex应用程序某一操作界面。
关键点:
1. 在Application中设置 historyManagementEnabled="false" ,因为Flex有些组件(eg:Tab)默认提供了DeepLink功能。
2. 调用BrowserManager.init() 在Application初始化的时候. 参数 "" 意思是 '#'后面什么都没有.
3. 在需要的地方更新地址栏URL。
4. 在Application初始化的时候调用 BrowserManager.addEventListener()监听浏览器的变化。
5. parseURL()解析URL导航到相应界面(更新的相应状态)。
你可以看这里http://www.mizhongwang.cn/flex-app/RandomBackgroundAndDeepLink/RandomBackgroundAndDeepLink.html
PS:源码中还包含了动态显示不同的背景的代码。每次进入是背景是随机显示的,多刷新几次就能看出来,图片太少了。
--EOF--
换个角度说,在传统的基于页面流的方式我们可以通过http://imzw.iteye.com/blogs/165173导航到一个页面。但RIA的方式通常不行,也就是我们通常无法通过一个链接导航到程序的一个操作界面。Ajax,Flash等RIA技术都面临着这个问题。Ajax可通过JavaScript调用浏览器相关的对象实现。Flash相对要困难些。Flex中已经内建了DeepLink来解决这个问题。
DeepLink是通过锚点,即http://imzw.iteye.com/blogs/165173#view=0;showDetails=true这样一个链接导航到Flex应用程序某一操作界面。
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" historyManagementEnabled="false" layout="absolute" backgroundImage="{bgSource}" backgroundColor="#97A5E3" initialize="init()" > <mx:Script> <![CDATA[ import mx.events.BrowserChangeEvent; import mx.managers.IBrowserManager; import mx.managers.BrowserManager; import mx.utils.URLUtil; import mx.controls.Alert; import mx.collections.ArrayCollection; import mx.rpc.events.ResultEvent; [Bindable] [@Embed(source="assets/dog.jpg")] public var dog:Class; [Bindable] public var bgSource:String; public var browserManager:IBrowserManager; private function init():void{ initApp(); bgHttpService.send(); } private function initApp():void { browserManager = BrowserManager.getInstance(); browserManager.addEventListener(BrowserChangeEvent.BROWSER_URL_CHANGE, parseURL); browserManager.init("", "Dog"); } private var parsing:Boolean = false; private function parseURL(event:Event):void{ parsing = true; var o:Object = URLUtil.stringToObject(browserManager.fragment); if (o.view == undefined){ o.view = 0; } tn.selectedIndex = o.view; browserManager.setTitle((tn.selectedIndex == 0) ? "AnotherDog" : "Dog"); tn.validateNow(); var details:Boolean = o.details == true; if (tn.selectedIndex == 0){ shipDetails.selected = details; }else{ recvDetails.selected = details; } parsing = false; } private function updateURL():void{ if (!parsing) callLater(actuallyUpdateURL); } private function actuallyUpdateURL():void{ var o:Object = {}; var t:String = ""; if (tn.selectedIndex == 1){ t = "AnotherDog"; o.view = tn.selectedIndex; if (recvDetails.selected){ o.details = true; } }else{ t = "Dog"; o.view = tn.selectedIndex; if (shipDetails.selected){ o.details = true; } } var s:String = URLUtil.objectToString(o); browserManager.setFragment(s); browserManager.setTitle(t); } private function bgHandler(event:ResultEvent):void{ var bgData:ArrayCollection = event.result.backgrounds.image; // mx.controls.Alert.show("result"); var minBg:int = 0; var maxBg:int = bgData.length - 1; var range:int =maxBg - minBg; var bgIndex:int = Math.round(Math.random() * range) + minBg; bgSource ="assets/"+ bgData.getItemAt(bgIndex).path; } ]]> </mx:Script> <mx:HTTPService id="bgHttpService" url="assets/backgrounds.xml" showBusyCursor="true" method="get" fault="{Alert.show(event+'')}" result="{bgHandler(event)}" /> <mx:VBox width="100%" height="100%" horizontalAlign="right" verticalAlign="middle"> <!-- 当Tab Change更新URL--> <mx:TabNavigator id="tn" change="updateURL()"> <mx:Panel label="Dog"> <mx:Image id="img" width="400" height="300" source="{dog}" scaleContent="true" /> <!-- 当CheckBox Change更新URL--> <mx:CheckBox id="shipDetails" label="Show Details" change="updateURL()" /> </mx:Panel> <mx:Panel label="Another Dog"> <mx:Image id="img1" width="400" height="300" source="{dog}" scaleContent="true" /> <mx:CheckBox id="recvDetails" label="Show Details" change="updateURL()" /> </mx:Panel> </mx:TabNavigator> </mx:VBox> </mx:Application>
关键点:
1. 在Application中设置 historyManagementEnabled="false" ,因为Flex有些组件(eg:Tab)默认提供了DeepLink功能。
2. 调用BrowserManager.init() 在Application初始化的时候. 参数 "" 意思是 '#'后面什么都没有.
3. 在需要的地方更新地址栏URL。
4. 在Application初始化的时候调用 BrowserManager.addEventListener()监听浏览器的变化。
5. parseURL()解析URL导航到相应界面(更新的相应状态)。
你可以看这里http://www.mizhongwang.cn/flex-app/RandomBackgroundAndDeepLink/RandomBackgroundAndDeepLink.html
PS:源码中还包含了动态显示不同的背景的代码。每次进入是背景是随机显示的,多刷新几次就能看出来,图片太少了。
--EOF--
- RandomBackgroundAndDeepLink.zip (2.2 MB)
- 描述: 源码
- 下载次数: 75
发表评论
-
1分钟去掉你的 FusionCharts 试用版标识
2010-11-03 13:14 12299最近对破解各种 SWF 有了些兴趣,看到 FusionC ... -
小工具式的开发 - 数据协议,通用界面
2010-10-08 17:25 1677经过一段时间的实践,以及后台组的帮助。 最终确定的数据协议是 ... -
flex开发:框架 vs 小工具
2010-10-01 23:59 1831经过最近半年的项目实践,我一直在思考,框架 vs 小工具两种开 ... -
Flash player 10 写本地文件导出CSV
2010-07-01 15:03 2676必须将编译器版本设为10.0.0以上,设置如下 FlexBui ... -
一些工具类(日期,对象,服务)
2010-06-29 13:54 1417分享几个工具类: 对象工具类 ObjectUtils 就一个方 ... -
Parsley Framework 和 Tips for Flex 的 PPT
2010-02-21 11:29 1897好久没有更新blog了,这段其实可以分享的很多,只不过生活 ... -
OrgChart 组织机构图 最近更新
2009-07-07 11:05 4826最新截图 示例 源码 注意:为了我个人的使用方便, ... -
Flex线组件之折线
2009-06-22 10:26 3123上一篇是直线,这次我稍稍改了一下,画个折线。 效果如下(源码 ... -
Flex中使用滤镜
2009-03-24 16:54 3777最近在OrgChart中加入了一个放大镜的功能,使用的是FLE ... -
Flex 线组件
2009-01-13 18:08 4876我在 OrgChart 中用的是Rule组件来划线,实际上最好 ... -
使用VIM开发Flex - 自动编译
2008-11-28 10:57 3135Flex Builder 还是不错地, 它继承了一部分Ecli ... -
使用VIM开发Flex - 基础环境设置
2008-11-27 16:44 3572Flex SDK 下载: http://opensource. ... -
OrgChart(组织机构图) - Flex
2008-10-13 11:29 11150前段时间,用Flex写了个OrgChart,截图如下 i ... -
Flex 与 Javascript 互操作
2008-09-17 12:08 2112出差了好长时间,终于要回京了! 在开发过程中Flex 与 ... -
Flex快速起步工具 - Explorer系列 - 附截图
2008-05-07 13:18 1782用了这么久Mac,就没有截过图,居然不知道快捷键 .只好Goo ... -
Flex之 Text Effect 问题
2008-04-30 19:59 2927通常Flex中的文字是不会有渐变效果的, 除非... 嵌入字 ... -
如何ActionScript3 根据出生日期获得年龄
2008-04-22 20:15 1390我一直很诧异,居然不能很容易的找到ActionScript3 ... -
Flex之模块化
2008-04-17 19:26 4883如果做一个很大的Flex程序,比如程序文件有2,3M,一次性下 ... -
Flex.org 的 MXNA RSS READER (含源码下载地址)
2008-04-17 12:48 2529你或许在http://www.Flex.org/blogs见过 ... -
Adobe Technology Platform - 你或许不做flex,却应该知道技术的发展方向
2008-04-15 20:41 2167https://www.photoshop.com/expr ...
相关推荐
博文链接:https://kangjie1.iteye.com/blog/92288
FLEX播放器 flex 开发AIR及Flex之mp3播放器教程 FLEX播放器 flex 开发AIR及Flex之mp3播放器教程
flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图...
FLEX特效FLEX特效FLEX特效FLEX特效 FLEX特效FLEX特效FLEX特效FLEX特效 FLEX特效FLEX特效FLEX特效FLEX特效 FLEX特效FLEX特效FLEX特效FLEX特效
Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex ...
Flex简介Flex简介Flex简介Flex简介Flex简介
flex事件flex事件flex事件flex事件flex事件
flex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex学习的好资源啊
Flex 组件Flex 组件Flex 组件Flex 组件Flex 组件
Flex万年历记事本_flex源码
java flexjava flexjava flex
flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式
Flex之URLLoader加载XML 使用URLLoader加载XML
Flex相册 Flex图片
flex皮肤flex皮肤flex皮肤flex皮肤flex皮flex皮肤肤
flex 面试题flex 面试题flex面试题flex
flex画线flex画线flex画线flex画线
flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码flex3注册码