初级视频编辑室|草蜢非编论坛|初级视编室|草蜢视频编辑|会声会影|威力导演|电子相册

 找回密码
 加入初编室
搜索
查看: 991|回复: 3
打印 上一主题 下一主题

[Flash 设计及应用] AS+JS的Flash网站无刷新定位技术(三)

[复制链接]

296

主题

1132

帖子

2万

积分

超级版主

Rank: 8Rank: 8

论坛版主精华帖勋章

跳转到指定楼层
楼主
发表于 2014-11-28 21:29:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
onekey onekey
据此,笔者开始写简单演示文档的制作过程。
1. 新建一FLASH文档,保存为main.fla
2. 然后,在FLASH里创建四帧,四个均为关键帧,
第一帧为空,写入代码stop();
第二帧放入静态文本Page 1,帧标签为page1,
第三帧放入静态文本Page 2,帧标签为page2,
第四帧放入静态文本Page 3,帧标签为page3,
3. 插入一图层,放在最底,里头放上三个按钮。分别写上
on(release){
       gotoAndStop("page1")//跳转到指定的帧标签
       fscommand("setAddress","page1")//这是个FSCOMMAND命令,让FLASH去调用JS函数,函数将在JS里定义。
}
on(release){
       gotoAndStop("page2")
       fscommand("setAddress","page2")
}
on(release){
       gotoAndStop("page3")
       fscommand("setAddress","page3")
}
4. 文件保存后,按照刚才姆椒ǚ⒉家桓龃鳩SCOMMAND跟踪的HTML文件。之后,建议在格式选项卡里把HTML选项的勾去掉。为了防止大意时,以后HTML文件手动加入的代码给覆盖掉。
5. 用记事本打开main.html文件,找到//place your code here(代码放在此处),在这里输入:
if(command=="setAddress"){
  document.location.hash=args//获得FLASH中FSCOMMAND传出的参数,并赋值给hash值,让地址栏在无刷新的情况下发生改变
}
6. 测试HTML文件,可以看到点按钮之后,地址栏发生了改变。但是刷新页面后,FLASH显示的还是第一帧,因为在刷新页面的时候,没有一个命令让FLASH的页面发生跳转
7. 为此,在main_DoFSCommand函数下面定义一个控制跳转的函数:
function setFlashPos(){
  main.TGotoLabel("_root",document.location.hash.slice(1))//让Flash跳转到地址栏#后面内容的标签名,之所以用slice(1),是因为JS读取出来的值是包含#的。所以要用slice(1)把#去掉。
}
8. 让刷新页面或者打开页面时调用该代码,就在body标签里加入onload=setFlashPos()
此时测试,就可以实现全FLASH站的无刷新地址跳转,达到FLASH站定位的目的了。
楼主热帖
河边已是一首歌
回复

使用道具 举报

206

主题

4458

帖子

7万

积分

初编室元帅

Rank: 14Rank: 14Rank: 14Rank: 14

活跃会员帅哥会员百帖纪念荣誉勋章论坛万元户

沙发
发表于 2014-11-29 06:51:46 | 只看该作者
谢谢楼主提供分享!!支持一下!!

1

主题

1083

帖子

3974

积分

初编室少校

Rank: 7Rank: 7Rank: 7

板凳
发表于 2014-11-29 07:07:42 | 只看该作者
支持技术贴 谢谢老师分享

131

主题

5690

帖子

11万

积分

初编室元帅

Rank: 14Rank: 14Rank: 14Rank: 14

帅哥会员活跃会员论坛万元户百帖纪念荣誉勋章

地板
发表于 2015-1-22 08:58:52 | 只看该作者
逛一逛,顶一顶。
您需要登录后才可以回帖 登录 | 加入初编室

本版积分规则

手机版|小黑屋|初级视频编辑室

GMT+8, 2024-6-24 03:31 , Processed in 0.068991 second(s), 30 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表