请选择 进入手机版 | 继续访问电脑版
收藏本站腾讯微博新浪微博
点点网模板设计大赛 phpchina

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 用悬赏 三天解决问题 解决访问速度慢 论坛支持农历生日 - 给官方提建议

论坛活动及任务 归纳网站最新活动 地图任务 邮件更新任务:保护帐号安全

积分换实物,来参加蓝色理想积分兑换吧! 联系招聘客服 蓝色理想帮你找工作! 万元奖励等你拿——点点网模板设计大赛

查看: 20878|回复: 25

[服务器端交互] 手痒,做了个FLASH+XML相册(添加注释) [复制链接]

lzyy 楼主

无网不剩

荣誉管理 手机认证 

帖子
1781
体力
7608
威望
65
发表于 2007-1-29 23:07:26 |显示全部楼层
在经典看到一个flash图片展示站点,自己也手痒了,做了一个,功能比较简单,但界面看着还比较舒服

小更新了一下,当点击大图片时在新窗口打开原图片

浏览地址:http://www.healdream.com/upload/flash/stage.html

全部AS(写的比较粗糙,见笑了,如果看得比较类的话,可以复制到flash里再看):
  1. import flash.filters.GlowFilter;
  2. this["loading_mc"]._visible = false;//将Loading设为不可见
  3. var myXML:XML = new XML();
  4. var img_url;//定义图片地址
  5. var pages = 1;//设定刚开始的页码
  6. var cur_page=1;//当前页码
  7. var img_nums = 11;//每页的图片数
  8. var img_intr:Array=new Array();//用来存放说明的数组
  9. var s_img:Array = new Array();//用来存放小图片地址的数组
  10. var b_img:Array = new Array();//用来存放大图片地址的数组
  11. var myMCL:MovieClipLoader = new MovieClipLoader();//这个是用来加载大图片的
  12. var myObj:Object = new Object();
  13. myObj.onLoadInit = function(mc) {
  14.         _root.loading_mc._visible = false;//将loading设为隐藏
  15.         //设置图片的宽和高
  16.         mc._width = Stage.width;
  17.         mc._height = Stage.height;
  18.         //定义鼠标滑过事件
  19.         mc.onRollOver = function() {
  20.                 //将消息条由舞台外移到舞台内,当y坐标变为0时删除帧循环
  21.                 _root.info_mc.onEnterFrame = function() {
  22.                         this._y += 8;
  23.                         if (this._y>=0) {
  24.                                 this._y = 0;
  25.                                 delete this.onEnterFrame;
  26.                         }
  27.                 };
  28.         };
  29.         //定义鼠标滑出事件,将消息条重新放到舞台外
  30.         mc.onRollOut = function() {
  31.                 _root.info_mc._y = -40;
  32.         };
  33.         //当鼠标按下时在新的窗口打开图片
  34.         mc.onRelease=function(){
  35.                 getURL("http://www.healdream.com/upload/flash/"+img_url,"_blank");
  36.         }
  37. };
  38. myMCL.addListener(myObj);
  39. //这个是用来加载小图片的
  40. var mySmallMCL:MovieClipLoader = new MovieClipLoader();
  41. var mySmallObj:Object = new Object();
  42. mySmallObj.onLoadInit = function(mc) {
  43.         //小图片加载完后设置宽高和坐标
  44.         mc._width = 53;
  45.         mc._height = 53;
  46.         mc._x = 1;
  47.         mc._y = 1;
  48. };
  49. mySmallMCL.addListener(mySmallObj);
  50. //定义发光滤镜
  51. var glow:GlowFilter = new GlowFilter(0xffffff, 0.7, 3, 3, 2, 3);
  52. //载入xml文件
  53. myXML.load("list.xml");
  54. myXML.ignoreWhite = true;
  55. myXML.onLoad = function(suc) {
  56.         if (suc) {
  57.                 //将里面的一些值放到之前定义的三个数组里
  58.                 for (var i = 1; i<=myXML.firstChild.childNodes.length; i++) {
  59.                         s_img.push(myXML.firstChild.childNodes[i-1].attributes.path);
  60.                         b_img.push(myXML.firstChild.childNodes[i-1].firstChild.nodeValue);
  61.                         img_intr.push(myXML.firstChild.childNodes[i-1].attributes.intr);
  62.                 }
  63.                 //计算出总页数
  64.                 pages = Math.ceil(myXML.firstChild.childNodes.length/img_nums);
  65.                 //让舞台上的11个mc分别加载小图片,并定义鼠标事件
  66.                 for (var i = 1; i<=11; i++) {
  67.                         var mc:MovieClip = _root["holder_"+i+"_mc"].createEmptyMovieClip("mc", 100+i);
  68.                         mySmallMCL.loadClip(s_img[i-1], mc);
  69.                         //将小图片地址赋给当前的mc
  70.                         _root["holder_"+i+"_mc"].img = b_img[i-1];
  71.                         _root["holder_"+i+"_mc"].i=i-1;
  72.                         //当鼠标滑过时,发光
  73.                         _root["holder_"+i+"_mc"].onRollOver = function() {
  74.                                 this.filters = [glow];
  75.                         };
  76.                         //当鼠标移出时复原
  77.                         _root["holder_"+i+"_mc"].onRollOut = function() {
  78.                                 this.filters = "";
  79.                         };
  80.                         //当鼠标按下时,加载大图片
  81.                         _root["holder_"+i+"_mc"].onPress = function() {
  82.                                 _root.info_mc.info_txt.text=img_intr[this.i];
  83.                                 img_url=b_img[this.i];
  84.                                 myMCL.loadClip(this.img, pic_holder_mc);
  85.                                 _root.loading_mc._visible = true;
  86.                         };
  87.                 }
  88.                 //定义当前页为1
  89.                 cur_page = 1;
  90.         }
  91. };
  92. //前一页按钮
  93. pre_mc.onRelease = function() {
  94.         get_pre();
  95. };
  96. //后一页按钮
  97. next_mc.onRelease = function() {
  98.         get_next();
  99. };
  100. function get_next() {
  101.         //计算当前页与总页数
  102.         if (cur_page<pages && pages != 1) {
  103.                 cur_page++;
  104.                 //定义起始的图片
  105.                 start_num = (cur_page-1)*img_nums;
  106.                 //加载下一页的图片
  107.                 for (var i = 1; i<=11; i++) {
  108.                         //当当前图片数大于总图片数时,卸载之前加载的图片
  109.                         if (start_num+i>s_img.length) {
  110.                                 mySmallMCL.unloadClip(_root["holder_"+i+"_mc"].mc);
  111.                         }
  112.                         _root["holder_"+i+"_mc"].i=start_num+i-1;
  113.                         _root["holder_"+i+"_mc"].img = b_img[start_num+i-1];
  114.                         mySmallMCL.loadClip(s_img[start_num+i-1], _root["holder_"+i+"_mc"].mc);
  115.                 }
  116.         }
  117. }
  118. function get_pre() {
  119.         if (cur_page>1) {
  120.                 cur_page--;
  121.                 //定义起始页
  122.                 start_num = (cur_page-1)*img_nums;
  123.                 //当当前图片数大于图片总数时退出循环
  124.                 for (var i = 1; i<=11; i++) {
  125.                         if (start_num+i>s_img.length) {
  126.                                 break;
  127.                         }
  128.                         _root["holder_"+i+"_mc"].i=start_num+i-1;
  129.                         _root["holder_"+i+"_mc"].img = b_img[start_num+i-1];
  130.                         mySmallMCL.loadClip(s_img[start_num+i-1], _root["holder_"+i+"_mc"].mc);
  131.                 }
  132.         }
  133. }
复制代码

源文件下载地址:http://www1.51files.com/?XMAHC7LUEJXS1RI5CAUR

[ 本帖最后由 lzyy 于 2007-1-30 12:01 编辑 ]
已有 1 人评分威望 收起 理由
mirycat + 2 原创内容

总评分: 威望 + 2   查看全部评分

西部数码顶级域名注册商39元抢注!
fadbox 
帖子
185
体力
374
威望
0
发表于 2007-1-30 00:26:26 |显示全部楼层

好啊
租服务器,上51IDC | [长沙]招聘:PHP经理10K/WEB前端6K/PHP开发6K

使用道具 举报

帖子
161
体力
522
威望
0
发表于 2007-1-30 03:06:52 |显示全部楼层
我也做了一个简单的,但是有问题
亲爱的楼主能帮我看看我写的读取xml载入外部图片吗?谢谢啦
http://bbs.blueidea.com/thread-2717187-1-1.html

[ 本帖最后由 Moonscape 于 2007-1-30 03:10 编辑 ]
别太CCTV了吧。

使用道具 举报

皇后她爸

银牌会员

帖子
720
体力
2471
威望
3
居住地
四川省 德阳市
发表于 2007-1-30 09:37:47 |显示全部楼层
全部as。我理解成界面也是as画的了……

使用道具 举报

Civito 

李小怪

初级会员 手机认证 

帖子
42
体力
138
威望
0
居住地
四川省 成都市
发表于 2007-1-30 09:43:23 |显示全部楼层
支持楼主。
怀才就像怀孕...

使用道具 举报

是我呀

银牌会员

帖子
448
体力
1131
威望
0
发表于 2007-1-30 10:39:34 |显示全部楼层
楼主,你能不能给我一个FLASH的留言板样板呢?
我不会写那些东西,只能拿着别人的改,从网上下下来的没有数据库,你能不能帮帮我给我一个呢?
什么?你说什么?再说一遍

使用道具 举报

笨笨兔子

高级会员

帖子
581
体力
912
威望
2
居住地
广东省 深圳市
发表于 2007-1-30 10:41:31 |显示全部楼层
谢谢,学习
…………

使用道具 举报

笨笨兔子

高级会员

帖子
581
体力
912
威望
2
居住地
广东省 深圳市
发表于 2007-1-30 10:47:22 |显示全部楼层
解释一下代码吧,大哥
…………

使用道具 举报

lefun 
帖子
9
体力
5
威望
0
发表于 2007-1-30 10:48:42 |显示全部楼层

上海乐纷数码招聘

我公司现急需FLASH程序员.会原画的和FLASH的人才,请及时和我们联系,公司电话:33772759,大连路990号506室."海上海新城"

使用道具 举报

帖子
745
体力
2237
威望
0
发表于 2007-1-30 11:35:52 |显示全部楼层
建议加注释啊   要不看着累死人了 。。。。
看了老半天才看几行

使用道具 举报

dmkdmk 
帖子
64
体力
196
威望
0
发表于 2007-2-25 10:26:56 |显示全部楼层
喜欢!

使用道具 举报

cnxcs 
帖子
694
体力
2544
威望
0
发表于 2007-2-25 11:22:26 |显示全部楼层

使用道具 举报

everq 
帖子
112
体力
418
威望
0
发表于 2007-3-1 14:15:49 |显示全部楼层
鼠标离开时,介绍返回的有点生硬,改柔和点会更好了

使用道具 举报

fadbox 
帖子
185
体力
374
威望
0
发表于 2007-3-1 15:19:57 |显示全部楼层
学习!!!!!!!!

使用道具 举报

帖子
109
体力
444
威望
0
发表于 2007-4-7 04:07:15 |显示全部楼层
八楼的!请问如何做到全荧幕呢?可以哀放原码吗?
感谢!

使用道具 举报

copstr 
帖子
28
体力
88
威望
0
发表于 2007-4-8 14:42:56 |显示全部楼层
里有两张图片还挺酷的,直接传到我的相册里了!

使用道具 举报

copstr 
帖子
28
体力
88
威望
0
发表于 2007-4-8 14:48:46 |显示全部楼层
用较小尺寸的图片来做预览确实比较好,我之前也是这么做的,不过我做了用户上传图片的功能以后就用大图做预览了,要想让服务器自动修改图片的尺寸大小比较麻烦!

使用道具 举报

kinr 
帖子
57
体力
179
威望
0
居住地
广东省 广州市
发表于 2007-4-14 11:49:56 |显示全部楼层
老大你的相册加载小图时没有LAODING呀..好难等
可不可以加一个呀....
www.kinr.net/blog

使用道具 举报

bfhyr 
帖子
22
体力
42
威望
0
发表于 2007-4-20 13:47:57 |显示全部楼层
楼主能不能修改一下啊?就是当点击小图片后,让它有个白色的框,表示目前浏览的图片,,,我在你的基础上修改了一下,没有成功!
坚持

使用道具 举报

HBrO 
帖子
7398
体力
32121
威望
241
居住地
广东省 广州市
发表于 2007-4-20 17:45:29 |显示全部楼层
楼上怎么这样子的?

使用道具 举报

yyqllh 

菜小小

银牌会员

帖子
369
体力
2265
威望
0
发表于 2007-4-20 22:28:21 |显示全部楼层
原帖由 HBrO 于 2007-4-20 17:45 发表
楼上怎么这样子的?

:D :D :D

使用道具 举报

lu6428 

二月秋风

中级会员

帖子
157
体力
521
威望
0
居住地
湖北省 武汉市
发表于 2007-5-16 12:25:27 |显示全部楼层
来晚了,找不着了啊

使用道具 举报

resun 

寻寒

高级会员

帖子
219
体力
731
威望
0
发表于 2007-5-17 10:22:27 |显示全部楼层
打开怎么是个国外网站,根本就没有flash
潔靜精微

使用道具 举报

帖子
31
体力
77
威望
0
发表于 2007-6-25 13:51:56 |显示全部楼层

回复 #13 everq 的帖子

我把控制文字的出现的代码改成这个,然后把帧调整为30fps.这样就流畅点
this._y =this._y + (0-this._y)/3

使用道具 举报

横眉怒目小金刚

禁止发言

帖子
95
体力
139
威望
0
发表于 2007-6-25 14:00:53 |显示全部楼层
LZ...许多细节的地方没处理噢

使用道具 举报

帖子
1
体力
12
威望
0
居住地
湖北省 武汉市
发表于 2008-11-26 11:06:23 |显示全部楼层
提醒:最后回贴距现在 520 天,请不要无意义回复
list.xml没有啊

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|安久科技提供CDN|blueidea.com ( 京ICP备05002321号 )  

GMT+8, 2012-2-13 07:15 , Processed in 0.146577 second(s), 9 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部