读书人

target跟currentTarget属性比较

发布时间: 2012-11-23 22:54:33 作者: rapoo

target和currentTarget属性比较

    <?xml?version="1.0"?encoding="utf-8"?>??<mx:Application?xmlns:mx="http://www.adobe.com/2006/mxml"?layout="absolute"?initialize="init();">???<mx:Script>????<![CDATA[?????import?mx.controls.Alert;?????private?function?canvasClick(event:MouseEvent):void{??????Alert.show('canvas?target:'+event.target.id);????????????Alert.show('canvas?currentTarget:'+event.currentTarget.id);?????}??????????private?function?panelClick(event:MouseEvent):void{??????Alert.show('panel?target:'+event.target.id);????????????Alert.show('panel?currentTarget:'+event.currentTarget.id);??????//event.stopImmediatePropagation();?????}????????????private?function?init():void?{??????_canvas.addEventListener(MouseEvent.CLICK,canvasClick);??????_panel.addEventListener(MouseEvent.CLICK,panelClick);?????}????]]>???</mx:Script>?????<mx:Canvas?x="0"?y="0"?width="100%"?height="100%"?backgroundColor="#FDFCFC"?id="_canvas">????<mx:Panel?x="116"?y="64"?width="427"?height="293"?layout="absolute"?id="_panel">?????<mx:Button?x="188"?y="158"?label="Button"?id="_click"/>?????<!--?image这个组件无法产生click事件??-->?????<mx:Image?source="1.png"?id="_image"?x="125"?y="70"?width="102"?height="47"/>????</mx:Panel>???</mx:Canvas>?????</mx:Application>??
?

总结:

(1)button这个组件默认的已经注册了click事件,image没有注册,必须手动注册click事件

(2)只有子组件的事件触发了,才会触发父组件的,否侧不会触发事件(事件的传播性,从 子----> 父)

(3)event.stopImmediatePropagation();这个方法是停止事件向父组件传播的

读书人网 >Web前端

热点推荐