2010-07-06 94 views
0

我成功從另一個域加載swf,但是當我addChild加載的內容時,它不會出現在舞臺上。 我的螢火蟲顯示swf載入狀態(304未修改),意味着沒有問題。無法從另一個域加載swf

爲什麼我在舞臺上看不到加載的swf內容?

謝謝

+0

從這裏下載最新的[flash player的調試版](http://www.adobe.com/support/flashplayer/downloads.html#fp10)。在安裝調試播放器(並重新啓動瀏覽器)後運行SWF時,您將看到有異常被拋出。發佈錯誤代碼和消息,如果不清楚的話。問題可能是您沒有權限(通過適當的crossdomain.xml文件)來加載文件。 – Amarghosh 2010-07-06 06:59:08

+0

我沒有收到任何錯誤。我在調試器中成功打開外部swf文件。 我使用MultiImageLoader類 我意識到,當加載的swf文件嘗試加載其他外部swfs時,它停止工作。 我希望有人以前面臨過這個問題。 – 2010-07-06 12:30:49

回答

1

我已經找到了問題。
我想分享給你,因爲任何人都可以面對這樣的問題。這個問題不會導致任何錯誤,所以很難找到它。

我們只需要在加載方法中添加loaderContext作爲第二個參數。有分配給它之前,我們必須以這種方式聲明它:

var loader_context:LoaderContext = new LoaderContext();
if (Security.sandboxType!='localTrusted') loader_context.securityDomain = SecurityDomain.currentDomain;
loader_context.applicationDomain = ApplicationDomain.currentDomain;

loader.load(url, loader_context);

這一切!

0

也許是它的一個跨域問題。 你在外部服務器上有一個crossdomain.xml文件嗎?

example xml

+0

是的,我在存儲外部swfs的服務器上有crossdomain.xml文件。我的加載器類加載它們,但完整的事件偵聽器不會觸發。任何建議,AS3中有最好的多鏡像/ swf加載器類嗎? – 2010-07-07 04:16:35

+0

我已經檢查過sandboxtype文件,它是Security.sandboxType:remote。它是okey嗎? – 2010-07-07 05:02:06

+0

那麼我的朋友,你可以使用這個鏈接加載多圖像/ swfs文件 http://code.google.com/p/bulk-loader/ http://www.stimuli.com.br/trane/2007 /月/ 25 /裝載 - 重新加載/ – 2010-09-20 09:19:47