我有这样的阵列和这些事件处理程序:AS3 - 包含数组影片剪辑,的indexOf
var btnArr:Array = new Array(aBtn, bBtn, cBtn);
aBtn.addEventListener(MouseEvent.MOUSE_OVER, blah);
bBtn.addEventListener(MouseEvent.MOUSE_OVER, blah);
cBtn.addEventListener(MouseEvent.MOUSE_OVER, blah);
凡aBtn,bBtn和cBtn是MovieClip对象。
当我尝试,并得到一个事件中的其中之一的指标,:
function blah(e:Event) {
var i = btnArr.indexOf(e.target);
trace(i)
那么,为什么这个跟踪返回undefined
每一次?
我现在已经实施了这两个建议,恐怕还是没有喜悦。 'trace(i)'仍然会返回'undefined'。 我也有其他痕迹这样的: '跟踪(e)中'' 迹(e.currentTarget)' 哪个输出:'[的MouseEvent类型= “鼠标移出” 气泡=真或取消=假的EventPhase = 2 localX = -4 localY = -14 stageX = 103.45 stageY = 35.95 relatedObject = null ctrlKey = false altKey = false shiftKey = false buttonDown = false delta = 0]'和 '[object MovieClip]'。 – rbrtl
使用curretTarget似乎已经解决了这个问题,现在我在跟踪中找到了正确的索引。非常感谢!现在有一个完全无关的问题来处理!我向你保证,如果今晚没有解决,我会发布它... – rbrtl