Tag Archives: AS3

使用SWFObject插入Flash在IE下导致stageWidth为0的解决方法

SWFObject SWFObject是一个用于在HTML中方面插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块。该模块中的JavaScript脚本能够自动检测PC、Mac机器上各种主流浏览器对Flash插件的支持情况。它使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优化的原则的。此外,它能够避免您的 HTML、XHTML中出现object、embed等非标准标签,从而符合更加标准。 SWFObject在IE下的BUG 如果Flash里绘制的对象的宽高是自适应Flash的宽高的,那么,使用SWFObject来插入Flash在IE会导致一个问题,当这个Flash被缓存后,也就是第二次访问该页面时,在该Swf文件被加载时,获取到的stage.stageWidth和stage.stageHeight为0,绘制的对象也就看不到了。

读书笔记:ActionScript3设计模式中的单件模式

单件模式用于限制类的实例化次数,使你在系统的任何位置都能访问到同一个实例;达到节省资源,管理方便的效果。 单件模式的应用 从一个XML文件加载程序的基本配置信息,只需要在Flash初始化的时候或者Air程序启动的时候执行一次即可,并且,在程序的整个运行阶段都只需要一个实例,并不需要建多个实例或者读取多次XML。 例如:用一个xml文件保存AIR应用程序配置信息,里面包含窗口起始位置,窗口的宽高。 <setting> <window x=”100″ y=”100″ width=”300″ height=”400″> </setting> 单件模式的实现 package cn.foxling.test { public class Setting { private static var _instance:Setting; public function Setting(enforcer:SingletionEnforcer) { } public static function getInstance():Setting { if (Setting._instance == null) Setting._instance = new Setting(new SingletionEnforcer()); return Setting._instance; } } } class SingletionEnforcer {}

魔嘀新版本(更新1.1版本)

经过一段时间的辛苦奋战,魔嘀终于发布1.0了,所有的代码全部重写,增加了一些常用的功能,并请@ZK设计了全新的UI,现在的魔嘀帅多了。 魔嘀下载页面:http://app.foxling.cn/modi/ 但现在还有许多细节都需要优化,时间有限,只能一步一步地更新了~ 如果发现了什么BUG,或有什么好的建议,在这里留言吧,不一定一一回复,但我都会整理记录起来的,并且在后面的版本里陆续实现,欢迎在嘀咕网跟随我,一起交流。 AIR应用的通病,内存消耗较大,所以,建议平时不用时最小化吧,最小化后内存占用会比较少,8M-12M左右,我也在不断地优化代码,寻找BUG,使魔嘀的内存占用量能维持在一个比较稳定的水平。 版本更新 1.0 (2009-04-10)

用Flash按钮解决跨浏览器使用剪贴板的复制功能

以前有一个比较完美解决网页上复制按钮的方法,是通过JS调用SWF文件,让SWF文件做为一个中介来完成复制的功能(请看跨浏览器使用剪贴板),但最Adobe 发布了 Flash Player 10,一切就变了~,这个版本的 Flash Player 引入了不少新的安全特性,其中包括了对于一些敏感操作需要用户介入的内容。 新的 Flash Player 10 中,需要上载或下载数据、操作系统剪贴板的操作等都需要用户参与,也就是说要实现类似的“复制”功能,必须要让用户点击指定的按钮或设置快捷键才可以解决。这也就意味着之前可以自动操作剪贴板的 Flash 脚本都已失效了。于是乎,开心网啊,校内啊,他们的复制按钮都失效啦,提示复制成功,粘贴后却还是之前的内容。 像Google相册、YouTube的链接都是点击选中,需要用户Ctrl+C自行复制的,这也是一种解决方案,好过开心网那种提示成功却没成功~~ 既然操作剪贴板的功能需要用户参与,那还是有解决方案的,做一个Flash的按钮让用户点击复制~~~

Flash里的9切片缩放,以及图片缩放类

CSS里有滑动门技术,使标签宽度自适应。 Flash里也有9切片缩放的选项,让圆角矩形在缩放时不会变形。普通的没有应用9切片的元件在进行了拉伸后会变形,见下图: Flash里的9切片 通过设置9切片缩放,可以解决这个问题,在库里面,右击元件,选择属性,勾选启用9切片缩放比例辅助线(只有影片剪辑才可以应用9切片属性): 双击库面板里的元件打开编辑,在舞台上可以看到出现了9切片的辅助线,鼠标拖动辅助线调整好位置: 再看看舞台上原来那个进行拉伸的元件,现在不管如何拉伸变形,圆角都能保持原样不变形: