2010-07-03 38 views
0

我有一个AS3 Flash文件,在时间轴上有一些动画。在时间轴上,我也有一个stop()在中间(在关键帧上)。当我运行这个SWF文件时,它停止了。但是,如果我使用Loader对象从另一个Flash文件加载,它不会停止(也不会运行任何其他操作脚本 - 即:trace(“hi”)) 我还包含当前应用程序域的上下文:AS3 ActionScript没有从加载的动画片段上的时间线运行

var context:LoaderContext = new LoaderContext(); 
context.applicationDomain = ApplicationDomain.currentDomain; 

thanx!

+0

你需要在这里放更多的代码... – 2011-01-19 16:25:06

回答

1

这篇文章:http://www.actionscript.org/forums/showthread.php3?t=185263解释了ApplicationDomain是如何工作的。似乎在使用相同的应用程序域时,时间轴上的代码无法工作,并且在使用新的应用程序域时它会这样做,但如果使用类,则不能在原始动画片段中使用它们,因为它们已由不同的类加载器加载。

1

你在听什么事件? .COMPLETE或.INIT?对于电影,您应该使用Event.INIT,它确保加载的电影已完全初始化,允许从父级电影访问已加载电影中的任何操作。

另外,你是测试本地,还是在服务器上?如果来自服务器,两个swf都在同一个域中吗?如果不是,则需要在加载的fla中包含对Security.allowDomain的调用。

相关问题