DOM事件模型
DOM 0级事件模型
<input type="button" onclick="doSomething()" />
input.onclick = function(){...}
//兼容性差异
event= event || window.event;
var target = event.target || event.srcElement;
![这里写图片描述](https://img-blog.csdn.net/20180131115512905?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20180131132818627?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
只支持一个DOM事件处理函数
DOM 2级事件模型
addEventListener(eventType,listener,userCapture)
![这里写图片描述](https://img-blog.csdn.net/20180131132926090?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
attachEvent(eventName,handler)
冒泡机制、捕获过程
![这里写图片描述](https://img-blog.csdn.net/20180131133142341?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
jQuery的事件操作
提供了统一的事件处理方法
允许添加多个事件处理函数
使用标准的事件名称(不带on)
事件示例作为事件处理函数的第一个参数
标准化事件实例最常用的属性
提供了统一的事件取消和阻止默认行为的方法
jQuery的事件模型
添加事件处理
on(eventType[,selector][,data],hadler)
参数1:事件的名称
参数2:选择器
参数3:数据
参数4:事件处理函数
![这里写图片描述](https://img-blog.csdn.net/20180131134522945?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20180131134744404?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
统一方法和属性
阻止冒泡:stopPropagation()
阻止默认行为:preventDefault()
阻止冒泡和默认行为:return false
![这里写图片描述](https://img-blog.csdn.net/20180131135310605?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
所有支持的事件
![这里写图片描述](https://img-blog.csdn.net/20180131135350225?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20180131135409917?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
一次性的事件处理
one(eventType[,selector][,data],handler)
![这里写图片描述](https://img-blog.csdn.net/20180131135611517?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
移除事件处理
off(eventType[,selector][,handler])
![这里写图片描述](https://img-blog.csdn.net/20180131141157973?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
事件实例对象
![这里写图片描述](https://img-blog.csdn.net/20180131141301703?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20180131141319643?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
红色部分表示有浏览器兼容问题,但是jQuery做了兼容处理
事件实例对象的方法
preventDefault()
stopPropagation()//阻止冒泡行为
stopImmediatePropagation()//立即阻止冒泡行为
![这里写图片描述](https://img-blog.csdn.net/20180131141609973?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
触发事件
![这里写图片描述](https://img-blog.csdn.net/20180131141649703?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20180131141715484?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
快捷方法
![这里写图片描述](https://img-blog.csdn.net/20180131141826068?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20180131141851805?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20180131141915049?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![这里写图片描述](https://img-blog.csdn.net/20180131141941828?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
自定义事件
![这里写图片描述](https://img-blog.csdn.net/20180131142028863?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3RkYXNr/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
事件命名空间
eventName.namespace