对于知道答案的人来说,希望这是一个简单的问题!
在AS3中,我正在侦听用户键盘命令,但不希望在用户键入文本字段时激活该命令。该命令是Shift + F,我不希望在有人输入时触发它。
Stage.focus返回一个InteractiveObject,我看不出如何确定它是否是InteractiveObject的TextField子类。它描绘出“[object TextField]”。
非常感谢所有人的帮助!
答案 0 :(得分:0)
您可以使用is
运算符。
private function keyboardEventHandler( e:KeyboardEvent ):void {
if ( e.target is TextField || e.currentTarget is TextField ) {
return;
}
// run the original handler
}
通过the LiveDocs:
评估对象是否与特定数据类型兼容, 类或接口。使用is运算符而不是instanceof 用于类型比较的运算符。您也可以使用is运算符 检查对象是否实现了接口。
因此,它允许您检查某个数据类型/类的对象是否,在本例中为TextField。