Actionscript 3 是否为ActionScript中的所有输入文本字段提供一个焦点事件侦听器?
我在安德烈亚斯的帮助下完成了它。我还添加了一些代码来获取目标文本字段的默认文本值。这有助于我在聚焦时将目标字段的文本设置回默认值。谢谢“安德烈亚斯”Actionscript 3 是否为ActionScript中的所有输入文本字段提供一个焦点事件侦听器?,actionscript-3,flash,textfield,dynamic-text,Actionscript 3,Flash,Textfield,Dynamic Text,我在安德烈亚斯的帮助下完成了它。我还添加了一些代码来获取目标文本字段的默认文本值。这有助于我在聚焦时将目标字段的文本设置回默认值。谢谢“安德烈亚斯” 是的,通过简单地引用FocusEvent中提供的displayObject,我们可以获得对悬停对象的引用。这允许您创建对悬停对象的通用引用,最终允许您将其放置在任意多个文本字段中 import flash.events.FocusEvent; import flash.text.TextField; input1.addEventListener
是的,通过简单地引用FocusEvent中提供的displayObject,我们可以获得对悬停对象的引用。这允许您创建对悬停对象的通用引用,最终允许您将其放置在任意多个文本字段中
import flash.events.FocusEvent;
import flash.text.TextField;
input1.addEventListener(FocusEvent.FOCUS_IN,inHand);
input1.addEventListener(FocusEvent.FOCUS_OUT,outHand);
//add all the other text input references like I did below...
input2.addEventListener(FocusEvent.FOCUS_IN, inHand);
input2.addEventListener(FocusEvent.FOCUS_OUT, outHand);
var def1:String = "Your text value here";
function inHand(evt:FocusEvent):void
{
var textField:TextField = TextField(evt.target);
textField.text = "";
}
function outHand(evt:FocusEvent):void
{
var textField:TextField = TextField(evt.target);
if(textField.text == "")
{
textField.text = def1;
}
}
谢谢你的重播。但我面临一个问题。它的作用是相反的。在输出窗口中,出现如下错误消息:**TypeError:error#1009:无法访问null对象的属性或方法参考资料。在Untitled_1_fla::maintaline/inHand()TypeError:Error#1009:无法访问空对象引用的属性或方法。在Untitled_1_fla::main timeline/outHand()@albhee,我已更正代码以修复您遇到的错误。我错误地使用了relatedObject而不是target。我认为您必须循环遍历所有的孩子,看看他们是否在那里,是否有textfield,并将事件应用到他们身上。
import flash.events.FocusEvent;
import flash.text.TextField;
input1.addEventListener(FocusEvent.FOCUS_IN,inHand);
input1.addEventListener(FocusEvent.FOCUS_OUT,outHand);
//add all the other text input references like I did below...
input2.addEventListener(FocusEvent.FOCUS_IN, inHand);
input2.addEventListener(FocusEvent.FOCUS_OUT, outHand);
var def1:String = "Your text value here";
function inHand(evt:FocusEvent):void
{
var textField:TextField = TextField(evt.target);
textField.text = "";
}
function outHand(evt:FocusEvent):void
{
var textField:TextField = TextField(evt.target);
if(textField.text == "")
{
textField.text = def1;
}
}