2010-07-03 39 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的調用。

相關問題