概念:
当产生某个事件时,事件从子元素向父元素触发或从父元素向子元素触发的过程 称为事件流
事件流的两种模式 :
事件冒泡 --- 从子元素向父元素触发 small ---> big --> body ---> document ---> window
事件捕获 --- 从父元素向子元素触发 window -- > document --- > body --- > big --> smal
当冒泡跟捕获同时存在的时候
先捕获 后元素 最后冒泡
分类:dom事件分为0级dom事件跟二级dom事件
0级DOM
分为2个:一是在标签内写onclick事件
二是在JS写onlicke=function(){}函数
2级DOM
只有一个:监听方法,有两个方法用来添加和移除事件处理程序:addEventListener()和removeEventListener()。
它们都有三个参数:第一个参数是事件名(如click);
第二个参数是事件处理程序函数;
第三个参数如果是true则表示在捕获阶段调用,为false表示在冒泡阶段调用。
- addEventListener():可以为元素添加多个事件处理程序,触发时会按照添加顺序依次调用。
- removeEventListener():不能移除匿名添加的函数。
- 只有2级DOM包含3个事件:事件捕获阶段、处于目标阶段和事件冒泡阶段
扩展(
1级DOM--(为什么没有1级DOM)
DOM级别1于1998年10月1日成为W3C推荐标准。1级DOM标准中并没有定义事件相关的内容,所以没有所谓的1级DOM事件模型。在2级DOM中除了定义了一些DOM相关的操作之外还定义了一个事件模型 ,这个标准下的事件模型就是我们所说的2级DOM事件模型
)