【发布时间】:2011-04-16 13:01:59
【问题描述】:
我正在应用内实现一个文本显示区域,当用户将鼠标悬停在四个元素之一上时,该区域会显示选定的文本。我不想为每个元素创建处理程序函数,而是想获取调用处理程序的实例的名称以实现 switch 语句。我尝试了两种方法,但都不起作用:
//install event handlers
initialText.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
timeText.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
withdrawalText.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
//also tried without toString, same result
var name:String= evt.target.name.toString();
var name=String= evt.currentTarget.name.toString();
这两个变量名都返回 undefined。但是,在调试器中,我可以通过 currentTarget.name 跟踪事件值,这显示了触发处理函数的实例,无论它是 withdrawalText, initialText or timeText。那么如何将名称值应用于变量以确定要显示的文本块呢?
【问题讨论】:
标签: actionscript-3 event-handling