先来上一段个人总结的理解
1/事件分为三个部分
(1)捕获阶段
(2)目标阶段
(3)冒泡阶段
事件冒泡
1/阻止事件冒泡是对同类名事件而言 (为什么得出这个结论呢:mousedown ,mouseup , mouseove ,fouce,blur 都尝试写了阻断,当时都没发阻止最上面的onclick的事件发生,后续又试验了mousedown )
2/事件冒泡的形象图:
请注意一点:默认是冒泡的,若是变捕获,需要改变addEventListener的第三个值
(1):false 默认值 冒泡
(2):true 不冒泡 捕获
事件对象:事件特有的对象,e 是变量名,常用的名字,可以为任何名字
//事件委托
什么是委托?
语言的含义: 我把一些感觉可以让别人帮忙处理的问题委托给别人处理.
在此处在举一个例子: 公司前台MM收快递
事件委托的原理(主要理解target属性)::
就是利用事件冒泡原理(请先理解冒泡),然后通过target属性,返回事件的目标节点,称为事件源,可以理解为target是实际点击的哪个标签(dom),但不是实际的dom.
为什么要用事件委托?
这句话让我有一个深的体会:原先认为dom的操作,对domj节点的增删改查,样式的变化等内容才会引起浏览器的重绘和重排,现在才知道给dom添加节点也会引起浏览器的重绘和重排.
我作业中的代码,可以执行
阻断冒泡是对同类事件起效果的