首先我使用带有AS3的Adobe Flash CS6
看看这些家伙因为我感到困惑:
我从按钮点击发送一个事件,确定这工作正常,我正在处理事件:
function killLoadedClip(event:Event):void{
trace(event.type);
event.target.removeEventListener('KillMe', killLoadedClip)
stage.removeChild(profileLoader);
profileLoader.unload();
}
像魅力一样!
但是,看看这个,跟踪显示以下
KillMe
当我这样做时:
function killLoadedClip(event:Event):void{
trace(event.type);
if (event.type == "KillMe")
{
trace("If in profile");
event.target.removeEventListener('KillMe', killLoadedClip)
stage.removeChild(profileLoader);
profileLoader.unload();
}
else
{
//do nothing
}
}
没有!!,跟踪显示正确的字符串,现在是非常令人困惑的位。如果我将event.type的值硬编码为“killMe”,它会进入并且它可以工作。
所以结论很简单吗?... event.type没有被识别为“KillMe”,但它被追溯为“KillMe”!!
我试过String以防万一,我在dynamicTexfield.text = event.type中使用它;它有效,显示“KillMe”!!
任何人都遇到过这个问题???