MovieClipLoader的事件处理秒差 |
| 作者:佚名 来源:不详 更新:2007-1-13 20:36:59 错误报告 我要投稿 |
最近因为公司一个小案子上出的问题,研究了一下MovieClipLoader这东西的特性, 发觉到onLoadComplete的意义不等于onLoadInit。 也就是说,一般逻辑思考下,档案都下载完了,应该就能用这件事情,在这里是错的。 好比说onLoadComplete事件被触发的时候,被载入的档案的frame label其实还无法使用, 感觉上onLoadComplete只是侦测档案被完全下载到记忆体中。
后来一时好奇加上好玩,我就想说,那来看看这两个事件被触发的秒差吧~ 代码:
var my_mcl:MovieClipLoader = new MovieClipLoader(); var myListener:Object = new Object(); contenter_mc._visible = 0; function GetTime() { var GTi:Date = new Date(); //var tmp = GTi.getTime(); var tmp = ""; tmp += GTi.getFullYear()+" : "; tmp += GTi.getMonth()+1+" : "; tmp += GTi.getDate()+" : "; tmp += GTi.getDay()+" : "; tmp += GTi.getHours()+" : "; tmp += GTi.getMinutes()+" : "; tmp += GTi.getSeconds()+" : "; tmp += GTi.getMilliseconds(); return tmp; } function TryLoader(file) { my_mcl.loadClip(file, contenter_mc); myListener.onLoadStart = function(ok) { if (ok) { trace("onLoadStart : "+GetTime()); status_txt.text += "onLoadStart : "+GetTime()+"\n"; } }; myListener.onLoadProgress = function(ok) { get_txt.text = my_mcl.getProgress(contenter_mc).bytesLoaded; all_txt.text = my_mcl.getProgress(contenter_mc).bytesTotal; }; myListener.onLoadComplete = function(ok) { if (ok) { trace("onLoadComplete : "+GetTime()); status_txt.text += "onLoadComplete : "+GetTime()+"\n"; } }; myListener.onLoadInit = function(ok) { if (ok) { trace("onLoadInit : "+GetTime()); status_txt.text += "onLoadInit : "+GetTime()+"\n"; contenter_mc._visible = 1; } }; myListener.onLoadError = function(ok) { if (ok) { trace("onLoadError : "+GetTime()); status_txt.text += "onLoadError : "+GetTime()+"\n"; } }; my_mcl.addListener(myListener); } 按钮触发 代码:
on (release) { TryLoader("自己找个网路远端的档案"); } 我透过FLASH自己的Date物件去抓我这台电脑上的时间,得到的结果是: 代码:
onLoadStart : 2005 : 6 : 2 : 4 : 23 : 42 : 31 : 718 onLoadComplete : 2005 : 6 : 2 : 4 : 23 : 42 : 59 : 718 onLoadInit : 2005 : 6 : 2 : 4 : 23 : 42 : 59 : 750 我没注意过onLoadInit一定晚onLoadComplete多少毫秒,但我能确定一定比较晚触发。 不过两者的毫秒差,好像每次执行都有些不同,有时候甚至同时(FLASH认为同时)。 不过在远端的档案已经在本地端有「暂存」的状态下,重新整理好几次,都是得到差28毫秒。
|
|
| 文章录入:skyuu 责任编辑:skyuu |
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |