我有一个AS3 Flash文件,在时间轴中有一些动画。在时间轴上,我在中间(关键帧上)也有一个stop()。当我运行这个SWF文件时它会停止。但是,如果我使用Loader对象从另一个Flash文件加载if它不会停止(也不运行任何其他动作脚本 - 即:trace(“hi”)) 我还将当前应用程序域的上下文包括在内:
var context:LoaderContext = new LoaderContext();
context.applicationDomain = ApplicationDomain.currentDomain;
感谢名单!
答案 0 :(得分:1)
你在听什么事? .COMPLETE还是.INIT?对于电影,你应该使用Event.INIT,它确保加载的电影已经完全初始化,允许从父电影中访问加载的电影中的任何动作。
另外,您是在本地还是在服务器上进行测试?如果从服务器,swfs都生活在同一个域中?如果没有,您需要在加载的fla中包含对Security.allowDomain的调用。
答案 1 :(得分:1)
这篇文章:http://www.actionscript.org/forums/showthread.php3?t=185263解释了ApplicationDomain的工作原理。似乎当使用相同的应用程序域时,时间轴上的代码不起作用,并且当使用新的应用程序域时,它会,但如果您使用类,则不能使用原始动画片段中的代码,因为它们已被不同的类加载器加载