呵呵,俺的理解是事件来源于生活!生活中的事件:张三踢了李四一脚,李四立刻跑去报告班主任——这就是踢人事件,张三是该事件的外部诱因,而李四是事件的发起者(sender),发起的动作就是“打小报告”,当然可能会有后续处理!JS 中的事件:鼠标点击提交按钮,弹出 confirm 提示是否提交?——这就是点击事件,鼠标点击该事件的外部诱因,而提交按钮是事件的发起者(sender),发起的动作就是弹出 confirm 提示是否提交?如果写代码就是:document.all.btnSubmit.onclick = function ()
{
return confirm(是否确认提交?);
};当然,如果不指定发起的动作,就什么也不执行,但是事件照样被触发,而且还会向上层对象传播,即事件冒泡原理!
{
return confirm(是否确认提交?);
};当然,如果不指定发起的动作,就什么也不执行,但是事件照样被触发,而且还会向上层对象传播,即事件冒泡原理!
解决方案 »
- 请教级联菜单,outhtml问题
- var response = eval("("+request.responseText+")") 解析成josn出了问题,急啊~~
- 我在插入TD的时候想给TD一些style属性,应该怎么添加?
- javascript和vbscript是否能互相调用函数或变量
- Ext 如果不用viewport 如何实现页面和grid的高宽度自适应 ?
- 怎样判断浏览器的版本号????
- 高手接招:请问在模态对话框中为何不能用window.history.back()?
- window.open()的超级问题,多次用window.open()竟出现多个窗口,所有个参数一样
- javascript: 子串是否存在的判断?
- 向高手求助,JQ判断单选和复选框的问题
- window.parent.frames["main"].document.title跨域怎样取值
- 谁有MzTreeView 2.0的,能不能发份给我。
事件按引发的条件源不同分为四种:
更改事件(由状态发生变化所引发的动作)
时间事件(时间因发事件的源)
信号(消息)
调用(主动调用)如果说override是纵向的,向下的扩展方式(偶合紧),那么事件可以说是一种横向的扩展方式(偶合松一些),
进程间的协议通讯是分布式的(偶合最松)如果说状态是由于执行了某某动作,而引用属性值发生变化,状态机,方法->字段
那么事件一般是当属性满足某某的时,将会发生的动作方法,字段->方法