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)
Flex event.target; event.currentTarget; 这两个有什么区别
最新推荐文章于 2017-03-11 07:43:21 发布