我有一个大的Flash文件加载但需要花费大量的时间下载。它是一个标题,我只是想知道我是否可以立即出现一个图像然后当闪存下载无缝重叠它?只是想知道是否有HTML来做这个?
由于
答案 0 :(得分:1)
据我所知,你有两个选项。
- 选项A 是您已经提到过的解决方案。我会在与swf position:absolute
相同的 div 中包含 img 标记,并让flash对 JavaScript进行ExternalInterface.call("hideImage")
调用加载swf并在javascript中使用hideImage
函数删除/隐藏img标记。
- 选项B (这就是我要使用的)是在 flash 中使用预加载器。在 flash 的第一个位置设置两个单独的关键帧。我用标签我的第一个“loading”和第二个“main”。在加载时,我有动作,类似于以下内容:
// stop the playhead from moving ahead
stop(); // you can also use gotoAndStop("loading"); if you want
function loaderProgressHandler(event:Event):void {
// switch the framehead to main which will show your content
if(event.bytesLoaded >= event.bytesTotal) {
event.target.removeEventListener(Event.PROGRESS, this.loaderProgressHandler);
this.gotoAndStop("main");
}
}
this.loaderInfo.addEventListener(Event.PROGRESS, this.loaderProgressHandler);
Flash 一旦加载就会显示“加载”帧段,你的swf将不会切换到“main”,直到其余的 swf < / em>已完成加载。如果 swf 与您说的一样大,我建议使用某种预加载器和百分比指示器。