2013-09-30 19 views
-1

我有一個拖放我創建的SWF,現在我試圖實現一個新的函數,我需要將實例和x/y座標傳遞給startDrag之外的其他函數和stopDrag函數。我試圖通過設置一個變量並將event.target存儲在startDrag函數中來實現實例名稱。針對event.target實例名稱而不是對象

但是,問題是,當我在該變量上運行跟蹤時,它不返回實例名稱。例如,我有一個實例名稱爲myClip1的動畫片段。但是,當我在變量上運行跟蹤時,控制檯將其報告爲[對象myClip1_1]。

我該如何將實際實例傳遞給變量,以便可以使用外部函數?

更新:我想出了爲什麼我要把「object myClip1_1」作爲輸出:不知何故,庫中的連接已打開。我已經禁用了,但現在,當我在event.target和event.currentTarget上運行跟蹤時,我只是得到「[輸出MovieClip]」而不是實例名稱。是什麼賦予了?

+1

從你的問題,它聽起來像你這樣做:trace(myVariable),你應該這樣做:trace(myVariable.name)。 – 2013-09-30 23:36:47

+0

爲了將來的參考,請始終包含您遇到問題的代碼。使它更容易幫助你。 – 2013-09-30 23:37:56

+0

爲什麼你需要定位實例名稱? – Pan

回答

1

只是增加.name到將event.target:

event.target.name 

編輯:

你不應該需要實例名稱連接到被拖動的對象。只是說在的startDrag功能:

currentDragObject = event.target. 

currentDragObject在全球範圍內定義:

var currentDragObject:MovieClip; 

這樣,currentDragObject將始終被重置爲被拖動的對象。

+0

這給了我實例名稱,但是我需要將實際實例傳回給我的其他函數。我將如何將該字符串轉換回實際實例? –

+0

event.target應該這樣做。如果將數字添加到實例中,則可能沒有在時間軸上命名的所有實例。如果event.target不起作用,請嘗試使用event.currentTarget。這兩個應該返回被點擊的對象的實例。 – Ribs

+0

兩者都不。我試過跟蹤event.target和event.currentTarget,它們都返回[object myClip1_1],而不是「myClip1」的實際名稱。 –

相關問題