您的位置:首页 > 其它

Flex event.target; event.currentTarget; 这两个有什么区别

2013-01-23 13:08 991 查看
target是引发事件对象  currenttarget 是处理事件对象  简单说,target是事件的调用对象(event dispatcher),currentTarget是事件的处理对象(event processor)  以一个实例来说吧  1 <?xml version="1.0" encoding="utf-8"?>  2 <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical" name="app"  3 initialize="init()">  4  5 <mx:Button id="btn" name="btn" label="按钮1"/>  6  7 <mx:Button id="btn2" name="btn2" label="按钮2" click="clickHandler(event)" />  8  9 <mx:Script>  10 <![CDATA[  11 import mx.controls.Alert;  12 private
function init(): void  13 {  14 addEventListener(MouseEvent.CLICK, clickHandler);  15 }  16  17 private function clickHandler(event: MouseEvent): void  18 {  19 Alert.show("target: " + (event.target as DisplayObject).name  20 + "\ncurrentTarget: " + (event.currentTarget
as DisplayObject).name);  21 }  22 ]]>  23 </mx:Script>  24 </mx:Application>  运行结果:  1.点击空白区域:  target: app  currentTarget: app  2.点击按钮1:  target: btn  currentTarget: app  3.点击按钮2先后出现两个alert窗口:  alert 1(stage的click事件响应):  target: btn2  currentTarget: app  alert
2(按钮2的click事件响应):  target: btn2  currentTarget: btn2  源:http://yangchao19851101.blog.163.com/blog/static/571301652011124104015187/  - 官方解释  currentTarget是事件的处理对象(event
processor)  target是事件的调用对象(event dispatcher)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: