js事件流

Posted 落落月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js事件流相关的知识,希望对你有一定的参考价值。

一、javascript事件流

js是一门基于对象和事件驱动的具有安全性的客户端脚本语言。

事件是连接JavaScript和DOM的桥梁,为js提供交互行为提供方式;事件绑定于DOM对象上,可用于用户触发而执行相对应的处理程序。

事件流包括三个阶段,分别是捕获阶段,目标阶段,冒泡阶段。

在阐述时间流的三个阶段之前,我们先了解一下js对象的事件监听。

所谓事件监听,即使为DOM绑定相对应触发事件;

绑定事件监听的三种方法分别为:

element.addEventListener(type,function,useCapture);//useCapture为ture,事件句柄在捕获阶段执行,反之在冒泡阶段执行;Mozilla中;
element.attachEvent("on"+type,function);//IE中
element.on+type=function(){};

绑定事件之后,当用户触发到某元素的事件之时,则会从document开始一级一级的向下查找到对应的元素,该阶段为捕获阶段;到达目标之后则为目标阶段;触发目标的处理程序之后,则从目标一级一级的向上直到document,该阶段为冒泡阶段。

如今一般都是使用冒泡事件流来进行事件的处理;

事件冒泡的作用主要是允许多个操作被集中处理,例如一个列表的每一个字段点击都会出现相应的处理反应,则可以直接为所有字段的上一级元素绑定处理程序;

但是有些程序相反需要取消冒泡机制带来的弊端,此时可以使用阻止事件冒泡的方法,evet.stopPropagation();

以上是关于js事件流的主要内容,如果未能解决你的问题,请参考以下文章

将 Node.js 流错误事件传播到异步等待样式代码

js阻止浏览器元素的默认事件与js阻止事件冒泡阻止事件流

js学习笔记:事件——事件流事件处理程序事件对象

JS116-JavaScript事件流和事件委托

第三天:JS事件详解-事件流

js 事件