事件机制
2017-01-18 19:42:54 0 举报
事件机制是一种编程模式,用于处理用户交互和系统内部发生的各种事件。它允许开发者将代码分解为独立的、可重用的部分,以便于管理和修改。事件机制的核心思想是发布-订阅模式,即当某个事件发生时,会触发一个或多个与之相关的回调函数。这种模式有助于降低代码耦合度,提高程序的可扩展性和可维护性。 在事件机制中,事件通常由特定的对象或类表示,而回调函数则负责处理这些事件。开发者可以通过注册回调函数来响应特定事件,从而实现对事件的监听和处理。此外,事件机制还可以支持多级事件处理,使得开发者可以根据需要灵活地组织和管理事件处理逻辑。总之,事件机制是一种强大的编程工具,可以帮助开发者更好地构建复杂的应用程序。
作者其他创作
大纲/内容
如果被消耗了handle掉了 返回dom节点
lastChildMouseOver != child{
child.routeMouseEvent
lastChildMouseOver!=child
处理按键
既没有子元素消耗掉 当前节点也没有handle掉
2鼠标拖动中
1开始鼠标拖动
return true
body.routeMouseEvent(Event evt)
return this
HtmlObject result =child.routeMouseEvent(evt.createSubEvent(Event.Type.MOUSE_ENTERED));
处理鼠标移动
如果之前不在
判断是否还在document范围呢
lastChildMouseOver!=null
if(child != null)
sendMouseEvent
遍历child
return false
鼠标在child中
lastChildMouseOver.routeMouseEvent(evt.createSubEvent(Event.Type.MOUSE_EXITED));
MOUSE_ENTERED|MOUSE_EXITED消耗进入离开事件
鼠标进入事件
用来触发子元素的鼠标离开事件
如果handle 有定义并且返回true
setMouseOverChild
遍历children查找可见并且在鼠标范围的子child 分发事件
child.setMouseOverChild
如果child还是和lastMouseOverchild 一样的话返回true
Document获取body分发事件从子元素倒序遍历
现在在了
如果在鼠标范围内
3鼠标单纯移动
Document
return child
child.routeMouseEvent(evt.createSubEvent(Event.Type.MOUSE_ENTERED))
处理Document的鼠标移入或离开事件
处理拖动
HtmlObject result = child.routeMouseEvent(evt);消耗事件本体
if result==null return false
routeMouseEvent
0 条评论
下一页