微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flex事件流

转载于:http://blog.163.com/it_yinliqing/blog/static/784972712010101512031300/

 事件流的流向:从上→下,到达 目标对象,从下→上。从上→下属于捕获阶段,从下→上冒泡阶段,捕获阶段认是关闭的。事件流检测过程中检测对象是否注册了事件,如果注册了事件则相应(执行对应的函数)。当捕获阶段设置为true时,冒泡阶段和目标阶段都不执行。

     一、注册事件说明:btn.addEventListener(type,fun,useCapture);

    1.type:事件类型,实际是字符串常量,表示事件的类型

    2.fun:事件处理函数

    3.useCapture :是否打开捕获,true:在捕获阶段触发事件(不执行目标阶段和冒泡阶段)  false:在冒泡阶段触发事件(不执行捕获阶段)

    二、移除事件说明:removeEventListener(type:string,listener:fun,useCapture:boolean=false)

     1.type:事件类型,该类型要与注册时的类型对应

     2.fun:事件处理函数,移除事件时调用方法,该方法要与注册时的方法对应

     3.useCapture:是否打开捕获

    三、分发事件:dispatchEvent(evt:Event):将事件加入到事件流中。

     1.使用方法:首先要注册监听,然后再一个方法中分发事件,到事件流中。

     2.dispatchevent(),在btn事件处理函数中,通过btn分发了"TestEvent"事件到事件流中,事件流经过的对象有,btn、cav、app。在事件流经过这些对象时,发现cav注册了"TestEvent"事件,所以就出发了该事件。如果cav没有在事件流中,那么将不触发该事件。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐