本文主要总结一下JS事件的学习大纲。
1. 事件流
1.1 事件冒泡: 具体 –> 不具体
1.2 事件捕获: 不具体 –> 具体
2.事件处理程序
2.1 HTML事件处理程序: 在<HTML>中加事件类型的属性
2.2 DOM0级事件处理程序: 例如:element.onclick
2.3 DOM2级事件处理程序(IE不兼容):
addEventListener() removeEventListener()
接受3个参数:事件名(去掉“on”)、函数、布尔值(false)
2.4 IE事件处理程序(只有IE和Opera起作用):
attachEvent() detachEvent()
接受2个参数:事件名(加上“on”)、函数、
2.5 跨浏览器的事件处理程序:
封装两个函数中, 例如: addEvent() removeEvent() 接受3个参数,就是DOM2级事件函数中的3个参数
能力检测: if(element.addEventListener) {
DOM2级
} else if(element.attachEvent) {
IE
} else {
DOM0级
};
3.事件对象 event
3.1 DOM事件常用对象
属性: type target
方法: stopPropagation() 阻止事件冒泡
preventDefault() 阻止事件默认行为
3.2 IE事件常用对象
属性: type srcElement cancleBubble returnValue