深度链接(Deep linking)--2
来源:互联网 发布:移动网络玩魔兽世界 编辑:程序博客网 时间:2024/06/05 17:20
接《SWFAddress--深度链接(Deep linking)》这篇文章,分析Document.as
1、导入swfaddress中的两个as文件
从官网下载的文件包中包含了as1.0,as2.0,as3.0的3种编码方式的as文件,根据as的不同版本,我们自行选其一。
(这里我用的是as3),这两个as文件定义了swfaddress中要用到的所有方法,如setTitle,href,setValue,getValue,back,forward,…
2、为SWFAddress添加侦听事件
在构造函数Document()中,为SWFAddress添加侦听事件,事件类型为:SWFAddressEvent.CHANGE,侦听事件:handleSWFAddressChange
当URL改变后,侦听事件就可以改变当前页面的Title,使用浏览器的前进按钮或后退按钮等动作。
addBtnListeners()是按钮事件。通过点击按钮来改变URL.
注意,想让SWFAddress工作起来,就要设置好这个侦听
看侦听事件:handleSWFAddressChange的代码
在这里使用了getValue()和switch语句,根据所获取的value中的斜杠线"/",判断当前页是否为主页,从而下一步动作。
使用getParameter(String)获取value中设置好的参数值,参数值不同,动作也不同。例子中设置的参数值是"page1""page2"
使用setTitle(String)是改变html页面的title值
3、改变URL
看addBtnListeners()的代码
四个按钮实例名称分别为:顺序是从上到下,从左到右, backb,nextb,page1_btn,page2_btn
上面的两个button是前进和后退,下面的两个button是改变URL和title,并load新的SWF
在点击了下面的两个按钮后,前进和后退按钮才开始动作
handlePageOne()和handlePageTwo()用来处理page1_btn,page2_btn,
所用的函数changePage(p:String)使用了SWFAddress.setValue(p:String)设置"#"号要填加的字符。
例子中是设置了带参数的字符串,我们也可以不带参数,这种情况下就可以去掉handleSWFAddressChange中getParameter(String),而使用getValue()。
设置参数时,一般以"?"开头,"page"是参数名,"="后是参数值,分别为"page1""page2"。
4、前进,后退
handleBack()和handleNext()用来处理backb,nextb
"前进"直接使用SWFAddress.forward();
"后退"直接使用SWFAddress.back(); 但要考虑一个问题,浏览器的历史记录有很多,我只想后退到当前的这个flash主页,不想后退到别的网站,就得对当前value进行判断
以上四点是最基本的步骤,还有其它SWFAddress的功能这里没有应用,如google跟踪分析,设置窗口 的status,获取浏览历史记录等。
重要的是理解SWFAddress.as ,SWFAddressEvent.as这两个文件,并根据自己的flash来灵活运用。
- 深度链接(Deep linking)--2
- Deep Linking 深度链接 2
- Deep Linking(深度链接)
- Deep linking 深度链接
- SWFAddress--深度链接(Deep linking)
- Flex里的深度链接(Deep Linking)
- iOS 中的 Deferred Deep Linking(延迟深度链接)
- iOS 中的 Deferred Deep Linking(延迟深度链接)
- iOS 中的 Deferred Deep Linking(延迟深度链接)
- 深度链接(Deep-linking)是移动和网络之间缺失的链接
- 链接基本原理(Linking)
- 链接(Linking)
- Deep Linking / SEO with Flex
- 【调研】关于Entity Linking(实体链接)的材料收集
- Deep Learning(深度学习)
- Deep Learning(深度学习)
- Deep Learning(深度学习)
- Deep Learning(深度学习)
- 存储过程1
- Oracle 读写文件 bfilename [实例]
- 删除SQL中的重复记录
- Liferay研究之卅一:Database Sharding(数据库分片)
- How to maintain scrollposition after post back? (转)
- 深度链接(Deep linking)--2
- tcpdump 安装使用
- Adaptive Server Anywhere(ASA)查询的怪异问题
- J2me性能优化,避免内存溢出小结[转]
- 百度关闭竞价排名部分功能,以提升用户体验
- 法网下的平衡--有感于邓玉娇事件
- 命令模式
- 解决跨网关技术
- 蓝莲花