推 KawasumiMai: 你可以trace(root) trace(parent) 08/24 23:25
→ KawasumiMai: 還有trace(parent.root)慢慢看她是什麼東西 08/24 23:25
→ heavenbetula: 可是在b.swf檔怎麼parent也parent不到a.swf呀 08/25 22:06
→ heavenbetula: 然後我在a.swf中也trace不到b.swf中的東西啊 08/25 22:07
推 KawasumiMai: function onLoaded(e:Event){ 08/27 15:26
→ KawasumiMai: e.currentTarget.content.(b的變數或函式) 08/27 15:26
→ KawasumiMai: } 08/27 15:26
→ KawasumiMai: 這樣可以呼叫b裡面的東西 08/27 15:28
→ KawasumiMai: 你可以在a和b裡面分別設一個變數做彼此的指向 08/27 15:28
→ KawasumiMai: 這樣一來就可以方便呼叫 08/27 15:29
感謝K大!測試後發現第一個root果然是指向b swf的主時間軸,而root.parent是指向
讀取它的loaderA,root.parent.root才是指向a swf的主時間軸,但是我還有一個疑問
那就是為什麼 MovieClip(root.parent.root).A_mc.addchild(loaderB);
改成 MovieClip(parent.root).A_mc.addchild(loaderB); 也可以呢?
既然parent.root指向的是loaderA,那這樣loaderA.A_mc不是照理沒辦法這麼做嗎?
※ 編輯: heavenbetula (36.231.160.242), 09/02/2014 23:06:40
※ 編輯: heavenbetula (36.231.160.242), 09/02/2014 23:07:54
推 KawasumiMai: parent才是loaderA,parent.root就是loaderA的root 09/03 10:45
我想我知道我哪裡有問題了,我一直將root.parent.root看的順序由右往左看...
然後在此對於b swf而言,root.parent與parent都是指向loaderA
※ 編輯: heavenbetula (61.231.11.41), 09/03/2014 20:28:07
→ KawasumiMai: 你把"."翻譯作"的"就不會搞錯了 09/03 20:53
→ KawasumiMai: 而root是根,parent是相對的上一層 09/03 20:53
→ KawasumiMai: 所以在最上層呼叫root等於自身,parent自然是一樣的 09/03 20:53
→ KawasumiMai: 如果你在b.swf內的元件內側呼叫parent.root 09/03 20:54
→ KawasumiMai: 因為parent是上一層,parent.root只會是b.swf的根 09/03 20:54
→ heavenbetula: 又長知識了,感謝K大! 09/04 19:56