還記得 as2 中被大量使用的 Delegate 么, as3 中他已經(jīng)不那么重要了, 因?yàn)楹瘮?shù)可以記住自己的作用域 as2 的例子:
import mx.utils.Delegate; var obj = new Object(); obj.traceThis = traceThis; obj.traceThis(); // 輸出 true, 也就是 obj 自己 obj.traceThis = Delegate.create(this, traceThis); obj.traceThis(); // 輸出 false, 因?yàn)槲覀円呀?jīng)手動把函數(shù)作用域指向到了 _root, (as3 中是 Timeline0)
function traceThis () { trace(this == obj); }
as3 的例子, 在 flash 9 alpha 中測試
var obj = new Object(); obj.traceThis = traceThis; obj.traceThis(); // 輸出 false, 沒有作用域的問題了~
function traceThis () { trace(this == obj); }
出處:藍(lán)色理想
責(zé)任編輯:moby
上一頁 動態(tài)改變影片幀速 下一頁 Graphic 對象和新的 Drawing API.txt
◎進(jìn)入論壇Flash專欄版塊參加討論
|