我遇到了同样的问题,将我的 AS2 代码更新为 AS3。但是我正在使用一个数组来调用整个 SWF 列表,以便在没有按钮的情况下自动加载一个又一个。
我采用了您的解决方案来解决这个问题,并根据我的需要进行了调整,并且成功了!对于任何想要我的代码的人,这里是:
容器(父)SWF,它调用加载器来加载 SWF 数组(在时间轴的第一帧):
import flash.net.URLRequest;
stop();
// Module Name and pages //
var mcArray:Array = new Array("swf/1-Intro.swf",
"swf/2-DOTdefinition.swf",
"swf/3-HazardousTable.swf",
"swf/4-BillsofLading.swf",
"swf/5-PaperBillsofLading.swf",
"swf/6-ReturnsManifest_v2.swf",
"swf/7-BillsOfLading.swf",
"swf/8-HazardClasses.swf",
"swf/9-HazardClasses2.swf",
"swf/11-ORMD.swf",
"swf/12-ID_Number.swf",
"swf/13-PackingGroup.swf",
"swf/14-ThinkAboutIt.swf",
"swf/15-EmergencyResponseBook.swf",
"swf/16-Labels.swf",
"swf/17-WhyKeepRecords_P1.swf",
"swf/17-WhyKeepRecords_P2.swf",
"swf/18-EmergencyResponseProcedures.swf",
"swf/19-SpillManagement.swf",
"swf/20-PreventativeMeasures.swf",
"swf/21-Security_v3.swf",
"swf/22-Certification.swf");
// Movie Clip Loader
var myMCL:Loader = new Loader();
var curFrameNum:Number = 0;
myMCL.addEventListener(Event.COMPLETE, loadNext);
function loadNext() { //this should be a global variable
var url:String = mcArray[curFrameNum];
var urlRequest:URLRequest = new URLRequest(url);
myMCL.load(urlRequest);
addChild(myMCL);
curFrameNum++;
}
loadNext();
对父方法的调用放在每个 SWF 影片(子)的最后一帧:
stop();
parent.parent.loadNext();