呵呵,俺的理解是事件来源于生活!生活中的事件:张三踢了李四一脚,李四立刻跑去报告班主任——这就是踢人事件,张三是该事件的外部诱因,而李四是事件的发起者(sender),发起的动作就是“打小报告”,当然可能会有后续处理!JS 中的事件:鼠标点击提交按钮,弹出 confirm 提示是否提交?——这就是点击事件,鼠标点击该事件的外部诱因,而提交按钮是事件的发起者(sender),发起的动作就是弹出 confirm 提示是否提交?如果写代码就是:document.all.btnSubmit.onclick = function ()
{
    return confirm(是否确认提交?);
};当然,如果不指定发起的动作,就什么也不执行,但是事件照样被触发,而且还会向上层对象传播,即事件冒泡原理!

解决方案 »

  1.   

    事件:当某某的条件满足时,发生的动作称为事件,
    事件按引发的条件源不同分为四种:
    更改事件(由状态发生变化所引发的动作)
    时间事件(时间因发事件的源)
    信号(消息)
    调用(主动调用)如果说override是纵向的,向下的扩展方式(偶合紧),那么事件可以说是一种横向的扩展方式(偶合松一些),
    进程间的协议通讯是分布式的(偶合最松)如果说状态是由于执行了某某动作,而引用属性值发生变化,状态机,方法->字段
    那么事件一般是当属性满足某某的时,将会发生的动作方法,字段->方法
      

  2.   

    单播delegate,多播MutiDelegate都事件的传播方式(向外扩展,灵活),event是多播固化方式