[問題] root, stage, global 這三個的差異??

看板Flash作者 (星之影)時間15年前 (2010/12/09 14:34), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
Flash 是寫越多感覺問題越深奧的東西.... 之前對於 容器不太瞭解的時候 我都把東西直接丟到 stage ex. stage.addChild, stage.removeChild, stage.addEventListener 這兩天在把 A.swf 包到 B.swf 之下才發現問題百出 爬文研究後才明白才知道... MainTimeLine(root) 是每個 swf 的最上層場景 stage 是 swf Player 最上層的場景 關係是下面那樣 Stage | MainTimeLine (root) 可是改一改又發現一個問題 我在用 var myFun:Function = () { trace(this) } 這種寫法的時候 this 會變成 object global 而不是 object MainTimeLine 可是這個 object global 又是什麼? function 自己的場景? 怎麼不是 MainTimeLine 阿? 這樣我就變成要改用 root.addEventlistener? 一整個被搞混了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.25.248.159

12/14 13:08, , 1F
我通常都會宣告一個var self,在建構子把self=this
12/14 13:08, 1F

12/15 15:29, , 2F
這樣聽起來不錯阿...
12/15 15:29, 2F

12/15 15:30, , 3F
又學到一招~~~ 感謝
12/15 15:30, 3F
文章代碼(AID): #1D07XsH5 (Flash)