我有一个在运行时加载各种 SWF 的 AS3 应用程序。正在使用的加载动画具有相当长的进出动画,如果目标 SWF 位于浏览器缓存中,我不想显示该动画。
因此,目前每个 SWF 都根据需要使用 Greensock 的SWFLoader以基本方式加载:
var context:LoaderContext = new LoaderContext();
context.applicationDomain = ApplicationDomain.currentDomain;
loader = new SWFLoader("mySWF.swf", {name:"sectionLoader",context:context,auditSize:true,onOpen:onLoadInit,onProgress:onLoadProgress, onComplete:onCompleteLoadHandler, onError:onLoadErrorHandler});
loader.load();
我的目标是在调用loader.load();
以确定加载操作是否需要请求超出浏览器缓存之前做一些事情,但在我进入研发之前,我想我会问是否有人已经做过类似的事情。
到目前为止,我还有一些想法:
- 仅仅跟踪在 AS3 中加载的内容是不够的,因为如果用户清除他们的缓存,他们可能会在没有指示符的慢速连接上加载大型 SWF。
- LoaderItem.httpStatus和LoaderItem.auditSize()的组合是否值得研究?
- 是否有更好的 AS3 加载框架,而不是 Greensock 类?
- 理想情况下,我更希望有某种版本检测来跨越可能相隔数月的会话,但一次一步。