ActionScript的一些“不为人知”的技巧 |
| 作者:未知 来源:webstudio 更新:2005-12-1 12:25:35 错误报告 我要投稿 |
用这篇文章来专门收集一些ActionScript不为人知,抑或是不常见的一些技巧或问题。希望对大家有所帮助! 这篇文章本人亦会不断更新和修正。 1. TextFormat.URL 很多人都知道使用textField.htmlText来写超文本的方式,可是似乎很少人知道其实我们还可以使用TextFormat.URL来定义。
1 : myFormat = new TextFormat(); 2 : myFormat.url = "http://www.zhitiao.com"; 3 : my_txt.html = true; //这是必须的 4 : my_txt.htmlText = "一张纸条工作室"; 5 : my_txt.setTextFormat(myFormat);
2. 使用Javascript方法 通常trace方法的浏览器替代方法可以使用
1 : function debug(info){ 2 : getUrl("javascript:alert('" + info + "')"); 3 : } 如果使用超文本链接的话,可以直接使用
my_txt.html = true; my_txt.htmlText = "<a href=javascript:alert('欢迎光临一张纸条工作室!')>一张纸条工作室</a>";
3. 复制数组 如果使用下面的复制数组的方法只是一个指向,并没有形成真正的拷贝。 [ Copy ] [ Run ] [ Save ] 1 : b_array = a_array; 2 : //当a_array数组内容改变的时候,b_array的内容也随之改变了 3 : //解决方法可以使用下面的方式 4 : b_array = a_array.slice();
4. 卸载拖入舞台的MC 我们知道只有动态创建的mc才可以使用removeMovieClip()方法来卸载,帮助中对removeMovieClip方法的说明如下: Quote 删除用 duplicateMovieClip()、MovieClip.duplicateMovieClip() 或 MovieClip.attachMovie() 创建的影片剪辑实例。 下面的技巧可以让我们随心所欲的卸载你需要的MC,即使是你拖入舞台的组件等。
1 : My_mc.swapDepths(100);//把mc的深度值设定为大于0的值 2 : My_mc.removeMovieClip();//这样就可以正常卸载mc了 是不是很有用哦。 PS:使用my_mc.unloadMovie() 以可以删除mc实例,但是却保留了实例属性和剪辑处理函数。用removeMovieClip() 可以删除实例(包括其属性和剪辑处理函数)。
5. 魔法深度值–16384 我们知道Flash中的元素使用深度的概念,所有创作中的元素都从 -16383 开始,所以如果我们要让某个元素显示在最底层的话,可以把深度设定为魔法深度值。 其中原因我们不妨深究下: 原来Macromedia's mx.managers.DepthManager 类中定义了下面的值: [ Copy ] [ Run ] [ Save ] 1 : // highest allowed depth is reserved for tooltips and cursors 2 : static var reservedDepth:Number = 1048575; 3 : // highest depth for all other objects 4 : static var highestDepth:Number = 1048574; 5 : // lowest allowed depth 6 : static var lowestDepth:Number = -16383; 7 : // lowest depth plus this number of layers is reserved 8 : // for statically placed content 9 : static var numberOfAuthortimeLayers:Number = 383; |
|
| 文章录入:skyuu 责任编辑:skyuu |
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |