所以我把swf加载到另一个swf中就像这样
correctURL是我的外部swf变量
function startLoad(){
var mRequest:URLRequest = new URLRequest(correctURL.toString());
mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);
mLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
mLoader.load(mRequest);
}
function onCompleteHandler(loadEvent:Event) {
var gmc:MovieClip = new MovieClip();
gmc.x = 266;
gmc.y = 67;
addChild(gmc);
gmc.addChild(loadEvent.currentTarget.loader);
}
但是当我想用另一个瑞士法郎替换它时,我正在努力卸下那该死的东西。
我正在尝试的代码就是这个
function closeAllStreams(e:Event){
e.currentTarget.loader.unloadAndStop();
gmc = null;
gmc.removeChild(e.currentTarget.loader);
trace("unloaded");
}
mLoader.contentLoaderInfo.addEventListener(Event.UNLOAD,closeAllStreams);
我只是没有运气,因为我仍然可以听到顶部的旧声音。
我不想访问加载的swf的变量,或者我只是欺骗哈哈。
由于
答案 0 :(得分:0)
无论如何这是一个问题:
gmc = null;
gmc.removeChild(e.currentTarget.loader);
我需要解释原因吗
答案 1 :(得分:0)
嗯,unloadAndStop()只适用于Flash-Player 10,然后你不需要为loader引用分配null,这个方法就可以了。您的closeAllStreams方法将在此语句之后调用
e.currentTarget.loader.unloadAndStop(); 要么 e.currentTarget.loader.unload();
所以最好不要在unload Event调度程序中调用它,即在你的情况下调用closeAllStreams。